从PHP 4.2升级到PHP 5.2
<?php $test="hello world"; ?>
<?= $test ?>
返回 你好世界
但是,添加注释斜杠会出现语法错误
<?php $test="hello world"; ?>
<?= //$test ?>
解析错误:语法错误,意外';'在第2行的/home/phpuser/docroot/lapp/test.php
在升级之前添加用于工作的注释斜杠,并在php.ini中启用short_open_tag。
由于
答案 0 :(得分:1)
<?=
实际上等同于<?php echo
,因此您基本上拥有<?php echo //$test ?>
,因此它会在echo语句之后寻找;
。
我建议在这种情况下,使用<?php //echo $test ?>
来消除错误。
答案 1 :(得分:0)
如果您使用<?=
(称为echo short标记),则尝试打印以下表达式的值。你不能发表评论。
您可以将代码更改为
<?php $test="hello world"; ?>
<?php echo $test ?>
然后发表评论:
<?php $test="hello world"; ?>
<?php //echo $test ?>
否则将<?=$test?>
更改为<?php /*=$test*/?>
对你的代码产生预期的效果。
参考:http://www.php.net/manual/en/language.basic-syntax.phptags.php
答案 2 :(得分:0)
错误是正确的。 <?= //$test ?>
是语法错误。
<?= $test ?>
是
的缩写<?php echo $test; ?>
这样做
<?= //$test ?>
就像在做
<?php echo //$test; ?>
这显然是语法错误。