ECShop V2.7.3 を PHP7 にインストールすると、エラーが報告されました。
非推奨: クラスと同じ名前のメソッドは、PHP の将来のバージョンではコンストラクターになりません。ECS の /usr/local/nginx/html/ecshop/upload/includes/cls_ecshop.php の 25 行目に非推奨のコンストラクターがあります
このエラーの理由は、PHP7 がクラスと同じ名前のコンストラクターをサポートしなくなったためです。たとえば、次のように記述された場合、PHP7 はこのエラーを報告します。リーリー
ecshop に戻って、cls_ecshop.php ファイルの 25 行目を見てみましょう。以下の通り
に変更しました。
非推奨: 非静的メソッド cls_image::gd_version() は、/usr/local/nginx/html/ecshop/upload/install/includes/lib_installer.php の 31 行目で静的に呼び出すべきではありません
このエラーの理由は、非静的メソッドが静的に呼び出されることです。たとえば、次のコードはこのエラーを報告します。 リーリー
メソッドを変更することも非常に簡単です。メソッドを静的メソッドに変更するか、呼び出しを非静的呼び出しに変更します。 エラーを報告したファイル lib_installer.php 内の 31 行のコードを見てみましょう
clsイメージクラスファイルのgd version()メソッドもあります
最初の変更方法は、メソッドを静的メソッドに変更し、メソッドの前にキーワード public static を追加することです
2 番目の変更方法は、非静的呼び出しを使用して、lib_installer.php の 31 行のコードを変更することです
どちらの方法でも問題を解決できます。 ecshop のインストール手順の 2 ページ目に戻ると、エラー メッセージは消えています。
次の悲劇は、PHP7 がオリジナルの mysql API をサポートしていないことです。PHP7 はより優れた Mysqli API と pdo_mysql API をサポートしているため、mysql を操作する API を変更しないと ecshop を PHP7 で実行できません。
OneAPM for PHP は、すべての PHP アプリケーションに深く入り込んで、アプリケーションのパフォーマンス管理と監視を完了できます。これには、コードレベルのパフォーマンスの問題の可視化、パフォーマンスの迅速な特定と追跡が含まれます。ボトルネック、実際のユーザー エクスペリエンスの監視、サーバーの監視、エンドツーエンドのアプリケーションのパフォーマンス管理。
上記では、ECshop が PHP7 バージョンに移行したときに発生した互換性の問題について説明しましたが、皆様のお役に立てれば幸いです。
興味があるかもしれない記事: PHP7 拡張機能の互換性問題の記録のための PHP 拡張機能の移行
http://www.bkjia.com/PHPjc/1100317.html