我正在寻找解决方案:
$txt = "Welcome to ".$place." City!";
$place = "New York";
echo $txt; // should be "Welcome to New York City!"
只能在变量“ $ txt”之后声明变量“ $ place”。 有可能吗?
谢谢
答案 0 :(得分:1)
目前尚不清楚您要完成什么。但这很接近您的示例,并且可以按预期工作:
$txt = "Welcome to %s City!";
$place = "New York";
printf($txt, $place); // should be "Welcome to New York City!"
答案 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);