PHP'de bir string alıp morse koduna dönüştürebilen bir temel mors kod dönüştürücü yazıyorum. İlişkilendirme dizisi, foreach döngüsü ve for döngüsü kullanmaktadır. Bazı nedenlerden ötürü, her dönüştürülmüş karakterden sonra '0' için eşdeğer morse kodunu çıkarır. 0'ın nereden geldiğini anlayamıyorum. İlişkisel diziden 0 çıkarırsam sorun olmaz ama sayıları da dönüştürebilmek istiyorum. Birisi bana geri bildirim verebilirse, bu çok takdir edilecektir. İşte PHP Mors kodu dönüştürücü
kodudur:<?php
$string = "dog";
$string_lower = strtolower($string);
$assoc_array = array(
"a"=>".-",
"b"=>"-...",
"c"=>"-.-.",
"d"=>"-..",
"e"=>".",
"f"=>"..-.",
"g"=>"--.",
"h"=>"....",
"i"=>"..",
"j"=>".---",
"k"=>"-.-",
"l"=>".-..",
"m"=>"--",
"n"=>"-.",
"o"=>"---",
"p"=>".--.",
"q"=>"--.-",
"r"=>".-.",
"s"=>"...",
"t"=>"-",
"u"=>"..-",
"v"=>"...-",
"w"=>".--",
"x"=>"-..-",
"y"=>"-.--",
"z"=>"--..",
"0"=>"-----",
"1"=>".----",
"2"=>"..---",
"3"=>"...--",
"4"=>"....-",
"5"=>".....",
"6"=>"-....",
"7"=>"--...",
"8"=>"---..",
"9"=>"----.",
"."=>".-.-.-",
","=>"--..--",
"?"=>"..--..",
"/"=>"-..-.",
" "=>" ");
for($i=0;$i<strlen($string_lower);$i++){
foreach($assoc_array as $letter => $code){
if($letter == $string_lower[$i]){
echo "$code<br/>";
}
}
}
?>
Yukarıdaki senaryoyu oluşturdunuz. Bunu yapamayacağın için hiçbir sebep göremiyorum. Bu sadece bir dizi manipülasyon. Sana yardım etmese de, ödevini yapmalısın. : D –