1

私は基本的な関数を書きました:

function letterreplacement() {
    global $word;

    $string = $word;
    $trans = array("a" => "4", "e" => "3", "i" => "1", "o" => "0");

    echo strtr($string, $trans);
}

$myvariable = letterreplacement();

私が抱えている問題は最後の行にあります - それは続けていechoます。

私は何を間違っていますか?

4

5 に答える 5

2

コードにある場合はecho strtr($string, $trans);、次のように置き換えますreturn strtr($string, $trans)

于 2013-07-04T21:14:35.880 に答える
1

グローバル変数とechoステートメントではなく、関数はパラメーターを入力として受け取り、return何かを出力として受け取る必要があります。(ちなみに、PHP ではa の;後に aは必要ありません)}

このようなもの:

        function letterreplacement($string) {

            $trans = array("a" => "4","e"=>"3","i"=>"1","o"=>"0");

            return strtr($string, $trans);

        }

        $myvariable = letterreplacement($word);
于 2013-07-04T21:17:04.410 に答える
0

呼び出された void 関数、値を返さない関数よりもエコーしたいだけなので、その関数で変数を初期化することはできませんが、soo が必要な場合は、エコーの代わりに関数本体で次のように return キーワードを使用する必要があります:

strtr($string, $trans); を返します。

于 2013-07-04T21:19:37.177 に答える
0

return を使用して関数からデータを返すことができます。echo はスクリプトからブラウザ/画面にデータを送信します。

php.net/echo php.net/return

于 2013-07-04T21:15:03.777 に答える
0

returnメソッド/関数から値を返すには、構文を使用する必要があります。すなわち:

function foo() {
  return 2;
}

echo foo();
于 2013-07-04T21:15:36.583 に答える