2

我以前遇到过这个问题,但不记得是什么原因造成的。我有一个使用速记符号来打印变量的小应用程序<?=$myvar?>,但它似乎没有被网络服务器解析?

关于这里可能有什么问题的任何想法?这有点奇怪,因为其他一切都正常。

谢谢!


它是一个带有回显命令 (=) 的短打开标签。从 php 5.4 开始,它不再标记为短打开标记,因此即使 php.ini 设置short_open_tags从该版本开始设置为 off 也可以工作。对于早期版本,它取决于该选项。

更多信息:

http://php.net/manual/en/ini.core.php#ini.short-open-tag

您可以检查该选项,例如使用$sot = ini_get('short_open_tags');

4

3 回答 3

7

它是一个带有回显命令 (=) 的短打开标签。从 php 5.4 开始,它不再标记为短打开标记,因此即使 php.ini 设置short_open_tags从该版本开始设置为 off 也可以工作。对于早期版本,它取决于该选项。

更多信息:

http://php.net/manual/en/ini.core.php#ini.short-open-tag

您可以检查该选项,例如使用$sot = ini_get('short_open_tags');

于 2012-05-02T15:21:10.693 回答
4

它可能在 PHP 配置中被关闭。您是否尝试将其添加到您的脚本中?

<?php
phpinfo();
?>

无论如何,尽量避免使用短标签,因为它们除了造成可移植性问题之外没有任何用处。:)

于 2012-05-02T15:22:51.897 回答
2

不仅要检查 short_opened_tags,还要确保它AddHandler application/x-httpd-php .php在您的 http.conf 文件中。如果它不存在,请添加它并重新启动您的 apache 服务器。

于 2012-11-16T17:01:48.630 回答