在PHP中,是否有对象运算符的替代方法,或对象运算符无法在Windows / IIS环境中运行的原因?
我正在尝试将PHP Web应用程序从Linux / Apache / MySQL迁移到Windows / IIS / MySQL(IIS10,PHP 7.1.1),并且看起来对象操作符在Windows环境中不起作用。为了使部分网站工作,我必须从
转换所有数组引用$query_rs->id;
到
$query_rs['id'];
我也关注对象函数的使用,比如
$Member->save();
和其他对象属性访问,如
$this->id
感谢您的时间,我在这里或网络上的任何其他地方都没有找到关于此问题的更多信息。
答案 0 :(得分:0)
我正在从Linux / Apache / MySQL(Apache 2.2,MySQL 5.5,PHP 5.4)迁移到Windows / IIS / MySQL(Windows Server 2012,IIS 10,MySQL 5.5,PHP 7.1)的PHP Web应用程序使用该对象运算符 - >成功访问.php文件和内联PHP代码中的数组项。在新的WIMP环境中,这不起作用并导致500内部服务器错误。我不得不从语法
重新配置所有数组引用$query_rs->id;
到
$query_rs['id'];
在应用程序运行之前。我做了很多测试来隔离问题,并确定对象操作符的其他常规用法按预期工作。我相信这是由PHP版本更新或IIS引起的问题,因为我在使用短开放标签与IIS一起工作时遇到了一些其他问题。