意外的“字符串”错误 (T_CONSTANT_ENCAPSED_STRING),预期为“,”或“;”


Unexpected "'String"' error (T_CONSTANT_ENCAPSED_STRING), expecting ',' or ';'

今天,当我遇到此错误以简化它时,我正在使用一些代码,我制作了一个简单的代码来返回此错误:

$i=1;
echo  $i*5."<br/>";

错误

syntax error, unexpected '"<br/>"' (T_CONSTANT_ENCAPSED_STRING), expecting ',' or ';'

在这里,我尝试将整数变量与整数值相乘,然后添加一些字符串后词。我发现逃避此错误的解决方案是简单地用5*$i替换$i*5,但我的问题是为什么会发生这种情况。在我的范围内,ov视图没有语法错误,但如果有任何语法错误,请告诉我。

错误的原因是5后的.,这使得编译器混淆了 5 是整数还是浮点值,即它期望在 . 后有一些数字,但它会"<br/>"您可以在数字后添加一个空格,以便编译器知道该数字已结束,如下所示:

$i=1;
echo  $i*5 ."<br/>";

正确的语法是

echo  $i*5, "<br/>";
// You can echo more than one expression, separating them with comma. 

echo  $i*5 . "<br/>";
// Notice the space.
// 5. is interpreted as ( float ) 5