0

私はこの小さなコードを持っています:

$a = "apple";
$var = "I like the $a";
echo $var;
echo "<br>";
$a = "pear";
echo $var;

OUTPUT:
I like the apple
I like the apple

OUTPUT I NEED:
I like the apple
I like the pear

文字列の変数を動的に更新する方法を知っている人はいますか?
ありがとう

4

2 に答える 2

6

$var文字列はインタープリターが到達した時点で解析されるため、 $a変数を変更してもその値は置き換えられません。あなたが代わりにやろうとしていることを達成するための多くのオプションがあります。

文字列形式を保存して$varから適用できますsprintf

$var = 'I like the %s';
echo sprintf($var, 'apple');
echo sprintf($var, 'pear');

または、パラメーターとして好きなものを受け取る関数を作成することもできます。

function generateLikeString($what) {
    return "I like the $what";
}

echo generateLikeString('apple');
echo generateLikeString('pear');
于 2013-10-28T16:17:35.457 に答える
0

$aで使用した後にの値を編集しています$var。後で$var変更しても影響はありません。$aこれをもう一度行う必要があります:

$a = "pear";
$var = "I like the $a";

または、次のようにします。

$a = "apple";
$var = "I like the ";
echo $var . $a;
echo "<br>";
$a = "pear";
echo $var . $a;
于 2013-10-28T16:14:31.543 に答える