我在Linux服务器上有一个web应用程序,以<?

我需要将这个应用程序复制到windows环境中,一切工作正常,除了SQL语句呈现不同。我不知道这是否与以<?用PHP代替<?因为我不知道从哪里启用<?所以我把它改为<?php

我知道这两个语句应该是相同的,但我需要用<?以确保应用完全相同。这样我就可以排除另一种可能性。

谢谢


当前回答

如果使用xampp,您将注意到php.ini文件两次提到了short_open_tag。启用第二个short_open_tag = On。第一个被注释掉了,您可能想取消注释并编辑它,但它被第二个short_open_tag覆盖了

其他回答

sed -i "s/short_open_tag = .*/short_open_tag = On/" /etc/php/7.2/apache2/php.ini

这适用于ubuntu 16上的php7.2,与上面Bradley Flood的答案相同,尽管存储配置文件的目录已经改变了。

此外,您还可以更改php字符串中的版本以匹配当前安装的版本。

; 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

您可以按照以下步骤进行操作:

1->进入/etc/php/7.3/apache2或你的PHP版本中的PHP .ini文件

2->找到short_open_tag,并将其设置为On和删除;从开始。

short_open_tag = On

3->重启服务器

sudo service apache2 restart

在Ubuntu上设置从Vagrant安装脚本打开短标签:

sed -i "s/short_open_tag = .*/short_open_tag = On/" /etc/php5/apache2/php.ini

如果你在windows中使用xampp,请按以下步骤操作

打开XAMPP控制面板。 点击CONFIG按钮。 进入PHP (PHP .ini)选项。

使用ctrl+f实用程序找到short_open_tag

您将找到;short_open_tag

请从行中删除分号(;)。

并将其保留为short_open_tag = on

最后,重新启动Apache服务器