2017-07-13 9 views
-1

PHPでは、オブジェクト演算子に代わるもの、またはオブジェクト演算子がWindows/IIS環境で動作しない理由はありますか?Windows/IIS上で動作しないPHPオブジェクト演算子( - >)

私はLinux/Apache/MySQLからWindows/IIS/MySQL(IIS10、PHP 7.1.1)にPHP Webアプリケーションを移行しようとしていますが、Windows環境でオブジェクト演算子が動作しないようです。現場作業の一部を行うために、私は私が

のような機能のためのオブジェクトの演算子の使用についても心配

$query_rs['id']; 

$query_rs->id; 

からすべての配列参照を変換する必要がありました

$Member->save(); 

$this->id 
のような他のオブジェクトのプロパティへのアクセス

ありがとう、ありがとうございました。私はこの問題に関する多くの情報をここや他のウェブサイトで見つけられませんでした。

+1

サーバーログに何か手がかりを与えるエラーがありますか? –

+1

何が起きていると思われるのですか?オブジェクトと配列は異なっており、オブジェクトが配列になっていることがわかります。オブジェクトがIISで動作しない理由はありません。それはまだphp afterallです。 – Doug

+1

これは明らかにIISのバグです。私はそれを使用したことはありません、なぜ私はあなたのプロダクションサーバもウィンドウであるいくつかの奇妙な理由がない限り誰もそれを使用するのを見ません。 wampやxamppのインストールをお勧めします。これは本当に解決策ではなく、単なる回避策です。申し訳ありませんが、あなたを助けることができません。 @LorenzV。 –

答えて

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アプリケーションは、 object operator - >を使用して、.phpファイルおよびインラインPHPコードの配列項目に正常にアクセスします。新しいWIMP環境では、これは動作せず、500内部サーバーエラーが発生します。私は、アプリケーションがうまくいく前に

$query_rs['id']; 

に構文

$query_rs->id; 

からすべての配列参照を再設定する必要がありました。私は問題を分離するために多くのテストを行い、オブジェクト演算子の他の従来の使用法が期待どおりに動作することを確認しました。私はこれがPHPバージョンのアップデートやIISに起因する問題であると信じています。これは、IISで動作するように短いオープンタグを取得することにいくつかの問題があるためです。

関連する問題