我目前正在运行CMS系统的教程,不幸的是使用了短开放标签.
我已经确认我的主机不会在他们的PHP配置中允许这些,但他们在Apache模式下运行PHP(而不是CGI).据我所知,这应该允许我将short_open_tag
标志设置为on
.htaccess文件.
但是,这似乎不起作用.在根目录中,我创建了一个仅包含以下行的.htaccess文件,但仍然忽略了短打开标记.
php_flag short_open_tag on
难道我做错了什么?如果没有,任何人都可以建议为什么它可能无法正常工作?谢谢.
注意:有人将此问题标记为在其他地方得到回答.识别出来的问题不仅没有被接受的答案,它基于并且PHP配置在CGI模式下运行,而不是Apache模式.
我想在php.ini中允许short_open_tags
我想访问配置了宅基地的我的流浪盒上的php.ini.我在/etc/php5/fpm/php.ini中看到了php.ini文件
但是...许可否认有人知道吗?
谢谢
我已经升级到PHP5.5,并在php.ini中现在short_open_tag=off
,我认识到这一点,因为一些文件,现在不能因为运行<?
,而不是<?php
.
现在有两种解决方案可以侦察任何php文件,并将打开的标签更改为<?php
或激活short_open_tag=on
第二个选项是否存在安全问题?
我刚刚安装了php 5.3.0,它不会使用像<?,只有<?PHP这样的短开标签运行php脚本.
我刚刚在php.net上看过这个评论,其中包含以下代码片段:
</head>
<?= ob_flush(); =?>
<body>
Run Code Online (Sandbox Code Playgroud)
我之前没有看到过=?>
使用过(我很好用<?=
,很明显),当我把它放在测试文件中时,它给出了语法错误.那么,这只是一个错字,还是有任何情况下这在语法上有效?
奇怪..我安装了Zend Framework
<?php echo $this->user; ?> works fine but
<?= $this->user; ?> does not work
Run Code Online (Sandbox Code Playgroud)
任何人都知道问题是什么?