PHP在回显之前将值添加到变量中的变量

时间:2018-11-21 19:42:24

标签: php variables echo

我正在寻找解决方案:

$txt = "Welcome to ".$place." City!";
$place = "New York";
echo $txt; // should be "Welcome to New York City!"

只能在变量“ $ txt”之后声明变量“ $ place”。 有可能吗?

谢谢

3 个答案:

答案 0 :(得分:1)

目前尚不清楚您要完成什么。但这很接近您的示例,并且可以按预期工作:

$txt = "Welcome to %s City!";
$place = "New York";
printf($txt, $place); // should be "Welcome to New York City!"

https://3v4l.org/jEQvZ

答案 1 :(得分:0)

您不能直接这样做。在分配时使用$place的值来连接字符串,因此对$place的任何更改都不会反映在字符串中。您可以通过编写一个函数来模拟类似的事情,该函数将在您知道该字符串应引用的位置后生成该字符串。

function welcome($place) {
    return 'Welcome to '.$place.' City!';
}

$place = 'New York';

echo welcome($place);

答案 2 :(得分:0)

是的,可能。
只需创建一个占位符并将其str_replace。
请注意,我将"更改为'
如果使用",它将把$ place读为变量。使用',$ place是字符串,可以在以后的代码中替换。

$txt = 'Welcome to $place City!';
$place = "New York";
echo str_replace('$place', $place, $txt);

https://3v4l.org/DVtQa