是否有类似Python的os.path.devnull
的东西指向PHP
(最好是v5.6
)中给定平台的正确null设备?
我在手册中没有看到什么明显的,phpinfo()
, $_SERVER
或$_ENV
,谷歌搜索的结果大多是python参考。我不相信有这样的事。我错过了什么?
PHP没有这样的内置功能。然而,阅读Python和PHP源代码会发现一个非常简单的解决方案:
function devnull()
{
$osToNull = [
// Windows
'WIN' => 'nul',
// OS2, eComStation
'OS2' => 'nul',
// RISC OS
'RISC' => 'null:',
// AmigaOS
'AMIGA' => 'nil:',
// OpenVMS
'VMS' => 'nl:',
// Unix, Netware
// returned if no other OS matches
'default' => '/dev/null',
];
foreach ($osToNull as $os => $nullDevice) {
if (strtoupper(substr(PHP_OS, 0, strlen($os))) === $os) {
return $nullDevice;
}
}
return $osToNull['default'];
}
由于我无法访问上述所有操作系统,如果我错了,请纠正我。