Php 如何更新变量?

Php 如何更新变量?,php,Php,是否可以更新变量 $a = "Mr.John"; $b = "Dear $a, how are you doing?"; // $b = "Dear Mr.John, how are you doing?" 但如果我将$a更新为其他内容,则$b不会更改 $a=盖茨先生//$亲爱的约翰先生你好吗 如何更新$b?$b不是一个变量。它是通过在字符串文字中插入变量创建的字符串;无法根据另一个变量的变化动态更新它 您应该考虑使$b成为一个返回字符串而不是普通字符串的函数,然后在需要使用字符串时调用它。在

是否可以更新变量

$a = "Mr.John";
$b = "Dear $a, how are you doing?"; // $b = "Dear Mr.John, how are you doing?"
但如果我将$a更新为其他内容,则$b不会更改

$a=盖茨先生//$亲爱的约翰先生你好吗

如何更新$b?

$b不是一个变量。它是通过在字符串文字中插入变量创建的字符串;无法根据另一个变量的变化动态更新它


您应该考虑使$b成为一个返回字符串而不是普通字符串的函数,然后在需要使用字符串时调用它。

在赋值过程中对其进行求值

你可以用函数来处理这个问题

function getMeString($a) {
   return "Dear $a, how are you doing?";
}
对不起,在这条评论的第一次修订中,我把事情弄混了

$a = "Mr.John";
function b() { return "Dear ".$a.", how are you doing?"; }
变量是另一回事:

$a = 'john';
$$a = 'silver';  // var var

echo $john;      // silver
那么:

$b=亲爱的。$a,你好吗


也就是说,$b是通过连接一些文本来创建的+$b+一些其他文本

PHP不能进行时间旅行。一旦将变量嵌入双引号字符串中,$whatever变量就消失了,只剩下它的值。PHP不跟踪它是如何构建字符串的,因此如果以后更改源变量,字符串将不会自动更新。

您尝试过什么吗?它将自动更改。您尝试过什么?您的第一个代码将导致与OP想要解决的问题相同的问题。