我在Linux服务器上有一个web应用程序,以<?
我需要将这个应用程序复制到windows环境中,一切工作正常,除了SQL语句呈现不同。我不知道这是否与以<?用PHP代替<?因为我不知道从哪里启用<?所以我把它改为<?php
我知道这两个语句应该是相同的,但我需要用<?以确保应用完全相同。这样我就可以排除另一种可能性。
谢谢
我在Linux服务器上有一个web应用程序,以<?
我需要将这个应用程序复制到windows环境中,一切工作正常,除了SQL语句呈现不同。我不知道这是否与以<?用PHP代替<?因为我不知道从哪里启用<?所以我把它改为<?php
我知道这两个语句应该是相同的,但我需要用<?以确保应用完全相同。这样我就可以排除另一种可能性。
谢谢
当前回答
如果你在windows中使用xampp,请按以下步骤操作
打开XAMPP控制面板。 点击CONFIG按钮。 进入PHP (PHP .ini)选项。
使用ctrl+f实用程序找到short_open_tag
您将找到;short_open_tag
请从行中删除分号(;)。
并将其保留为short_open_tag = on
最后,重新启动Apache服务器
其他回答
; Default Value: On
; Development Value: Off
; Production Value: Off
; http://php.net/short-open-tag
;short_open_tag=Off <--Comment this out
; XAMPP for Linux is currently old fashioned
short_open_tag = On <--Uncomment this
sed -i "s/short_open_tag = .*/short_open_tag = On/" /etc/php/7.2/apache2/php.ini
这适用于ubuntu 16上的php7.2,与上面Bradley Flood的答案相同,尽管存储配置文件的目录已经改变了。
此外,您还可以更改php字符串中的版本以匹配当前安装的版本。
这可以通过在php.ini中启用short_open_tag来实现:
short_open_tag = on
如果你没有访问php.ini,你可以尝试通过。htaccess文件启用它们,但如果你是在共享主机上,主机公司可能会禁用它:
php_value short_open_tag 1
对于那些认为short_open_tags在php5.4中是不好的做法的人来说,<?=……> shorttag在任何地方都将被支持,不管设置如何,所以如果你可以控制服务器上的设置,没有理由不使用它们。在这个链接中还提到:short_open_tag
就这么简单,请遵循以下步骤:
进入php.ini文件 找到short_open_tag并将其设置为on short_open_tag = On 重新启动服务器
对于docker,将此步骤添加到Dockerfile中
ARG phpIniPath=/path/to/your/php.ini
RUN sed -i -e 's/^short_open_tag\s*=.*/short_open_tag = On/' $phpIniPath