english

learn php

learn css

learn html

learn javascript

learn php

6. loops

solution 6.3
5 minutes / 816 words

six / solution 6.3

<?php

$string = "woke up lookin' like this so don't get under my skin";

// make lowercase so letters only need to be checked once
$string = mb_convert_case($string, MB_CASE_LOWER);

// print morse code for string
foreach (str_split($string) as $letter) {
    $letter == "a" && print_r(".- ");
    $letter == "b" && print_r("-... ");
    $letter == "c" && print_r("-.-. ");
    $letter == "d" && print_r("-.. ");
    $letter == "e" && print_r(". ");
    $letter == "f" && print_r("..-. ");
    $letter == "g" && print_r("--. ");
    $letter == "h" && print_r(".... ");
    $letter == "i" && print_r(".. ");
    $letter == "j" && print_r(".--- ");
    $letter == "k" && print_r("-.- ");
    $letter == "l" && print_r(".-.. ");
    $letter == "m" && print_r("-- ");
    $letter == "n" && print_r("-. ");
    $letter == "o" && print_r("--- ");
    $letter == "p" && print_r(".--. ");
    $letter == "q" && print_r("--.- ");
    $letter == "r" && print_r(".-. ");
    $letter == "s" && print_r("... ");
    $letter == "t" && print_r("- ");
    $letter == "u" && print_r("..- ");
    $letter == "v" && print_r("...- ");
    $letter == "w" && print_r(".-- ");
    $letter == "x" && print_r("-..- ");
    $letter == "y" && print_r("-.-- ");
    $letter == "z" && print_r("--.. ");
    $letter == "0" && print_r("----- ");
    $letter == "1" && print_r(".---- ");
    $letter == "2" && print_r("..--- ");
    $letter == "3" && print_r("...-- ");
    $letter == "4" && print_r("....- ");
    $letter == "5" && print_r("..... ");
    $letter == "6" && print_r("-.... ");
    $letter == "7" && print_r("--... ");
    $letter == "8" && print_r("---.. ");
    $letter == "9" && print_r("----. ");
}

print_r("\n");

// print nato alphabet for string
foreach (str_split($string) as $letter) {
    $letter == "a" && print_r("alfa ");
    $letter == "b" && print_r("bravo ");
    $letter == "c" && print_r("charlie ");
    $letter == "d" && print_r("delta ");
    $letter == "e" && print_r("echo ");
    $letter == "f" && print_r("foxtrot ");
    $letter == "g" && print_r("golf ");
    $letter == "h" && print_r("hotel ");
    $letter == "i" && print_r("india ");
    $letter == "j" && print_r("juliett ");
    $letter == "k" && print_r("kilo ");
    $letter == "l" && print_r("lima ");
    $letter == "m" && print_r("mike ");
    $letter == "n" && print_r("november ");
    $letter == "o" && print_r("oscar ");
    $letter == "p" && print_r("papa ");
    $letter == "q" && print_r("quebec ");
    $letter == "r" && print_r("romeo ");
    $letter == "s" && print_r("sierra ");
    $letter == "t" && print_r("tango ");
    $letter == "u" && print_r("uniform ");
    $letter == "v" && print_r("victor ");
    $letter == "w" && print_r("whiskey ");
    $letter == "x" && print_r("xray ");
    $letter == "y" && print_r("yankee ");
    $letter == "z" && print_r("zulu ");
    $letter == "0" && print_r("zero ");
    $letter == "1" && print_r("one ");
    $letter == "2" && print_r("two ");
    $letter == "3" && print_r("three ");
    $letter == "4" && print_r("four ");
    $letter == "5" && print_r("five ");
    $letter == "6" && print_r("six ");
    $letter == "7" && print_r("seven ");
    $letter == "8" && print_r("eight ");
    $letter == "9" && print_r("niner ");
}

alternate solution...

<?php

$morse = ["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" => "----."];

$nato = ["a" => "alfa", "b" => "beta", "c" => "charlie", "d" => "delta", "e" => "echo", "f" => "foxtrot", "g" => "golf", "h" => "hotel", "i" => "india", "j" => "juliett", "k" => "kilo", "l" => "lima", "m" => "mike", "n" => "november", "o" => "oscar", "p" => "papa", "q" => "quebec", "r" => "romeo", "s" => "sierra", "t" => "tango", "u" => "uniform", "v" => "victor", "w" => "whiskey", "x" => "xray", "y" => "yankee", "z" => "zulu", "0" => "zero", "1" => "one", "2" => "two", "3" => "three", "4" => "four", "5" => "five", "6" => "six", "7" => "seven", "8" => "eight", "9" => "niner"];

$morseOut = [];
$natoOut = [];

$string = "woke up lookin' like this so don't get under my skin";

// make lowercase so letters only need to be checked once
$string = mb_convert_case($string, MB_CASE_LOWER);

// get morse code & nato for string
foreach (str_split($string) as $letter) {
    isset($morse[$letter]) && ($morseOut[] = $morse[$letter]);
    isset($nato[$letter]) && ($natoOut[] = $nato[$letter]);
}

print_r(implode(" ", $morseOut) . "\n");
print_r(implode(" ", $natoOut) . "\n");

learn php

learn css

learn html

learn javascript

powered by akelei. an avi sato project.