我有这个小代码:
$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
任何人都知道如何动态更新字符串中的 var 吗?
谢谢
我有这个小代码:
$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
任何人都知道如何动态更新字符串中的 var 吗?
谢谢
您的$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');
$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;