我阅读了SO上的一些主题,但没有找到非常具体的答案。
我需要使用PHP检查PHP代码是在本地还是远程主机上运行。目前我使用$_SERVER ['SERVER_NAME']
进行检查,但它不一致。在这种情况下,如果我使用列出的IP(例如127.0.0.1
或localhost
)运行PHP,它将被视为本地,否则为远程。如果我与朋友共享我的IP,则我的代码仍然是本地的,但它会被视为远程,因为共享的IP未列出。
好吧,我认为检查本地主机的IP地址不是一个好主意(除非你知道一个好的方法)。我尝试了像gethostbyaddr()
和gethostbyname()
这样的方法,但它们也不能正确工作。
我没有PHP代码可以展示,但我的代码基本上是这样的:
// true = localhost
return $_SERVER['SERVER_NAME'] === '127.0.0.1';
基本问题是:什么可以确定 PHP 正在本地运行?对于 PHP 来说,“本地”是什么意思?我认为这可以解决问题。
注:我无法通过 PHP 访问 CMD/Shell。