上手。SOでいくつかのトピックを読みましたが、具体的な答えは見つかりませんでした。
PHPコードがローカルホストまたはリモートホストで実行されているかどうかをPHPに確認する必要があります。現在確認して$_SERVER['SERVER_NAME']
いますが、一貫性がありません。この場合、のようなリストされたIPを使用してPHPを実行する127.0.0.1
とlocalhost
、ローカルと見なされます。それ以外の場合はリモートと見なされます。IPを友人と共有する場合、コードはローカルのままですが、共有IPがリストされていないため、リモートと見なされます。
ええと、ローカルホストのIPをチェックするのは良い考えではないと思います(良い方法を知っている場合を除いて)。gethostbyaddr()
のような方法を試しgethostbyname()
ましたが、正しく機能しません。
表示するPHPコードはありませんが、基本的には次のようになります。
// true = localhost
return $_SERVER['SERVER_NAME'] === '127.0.0.1';
基本的な質問は、PHPがローカルで実行されていることを何が判断できるかということです。PHPの「ローカル」とは何ですか?問題は解決できると思います。
Obs.:PHPでCMD/Shellにアクセスできません。