当脚本在Apache下运行时,我将$_SERVER['SERVER_NAME']
值插入到报告电子邮件的错误中.
但是,如果一个Web脚本叉一个"工人"的工作有nohup php ...
,$_SERVER['SERVER_NAME']
显示为空在那里.因此,如果发生错误,则报告没有主机名.
我可以通过PHP可靠地获取主机名,而无需调用Unix hostname
命令吗?
php_uname( "N")
(PHP 4> = 4.0.2,PHP 5)
php_uname - 返回有关运行PHP的操作系统的信息php_uname()返回PHP正在运行的操作系统的描述.这是您在phpinfo()输出的最顶部看到的相同字符串.对于刚刚操作系统的名称,可以考虑使用PHP_OS不变,但要记住这个常量将包含操作系统PHP是建立在.
在一些较老的UNIX平台,它可能不能够确定在这种情况下,它会恢复到显示OS PHP是建立在当前的操作系统信息.只有在uname()库调用不存在或不起作用时才会发生这种情况.