0

好的,很抱歉,如果之前有人问过这个问题,但我不知道搜索它的关键字。情况是:

$sentence = ' $subject is a genius ';
$subject = " Einstein ";
echo( $sentence );

我怎样才能让它呼应“爱因斯坦是个天才”,但在定义 $subject 之前继续定义变量 $sentence ?

您可能意识到这是使用模板的基本概念。是的,我正在努力实现它。多谢你们

4

5 回答 5

7

尝试使用sprintf

$sentence = '%s is a genius';
$subject  = 'Einstein';
echo sprintf($sentence, $subject);

这将输出Einstein is a genius

于 2012-05-31T11:56:05.570 回答
1
$sentence = '$subject is a genius';
$output = str_replace('$subject', ' Einstein ', $sentence);
echo( $output );
于 2012-05-31T12:03:26.517 回答
0

使用 concatenator .,这个“粘贴”字符串在一起。

$sentence = "is a genius.";
$subject = "Einstein";

echo $subject." ".$sentence;

或者你的意思可能是这个?不太明白“稍后评估”的意思。

$sentence = "is a genius.";
$subject = "Einstein";

$fullsentence = $subject." ".$sentence;

echo $fullsentence;

编辑我认为您正在寻找 Frietkot 他的答案;)

于 2012-05-31T11:50:38.943 回答
0
$sentence = "is a genius.";
$subject = "Einstein";


echo '"'. $subject." ".$sentence .'"';
于 2012-05-31T11:54:03.517 回答
-2

更改变量的顺序并在句子字符串上加双​​引号 变量不会在单引号中求值

$subject = " Einstein ";
$sentence = " $subject is a genius ";
echo( $sentence );
于 2012-05-31T11:53:36.050 回答