php - 在 PHP 中查找特定于平台的空设备?

标签 php null multiplatform

是否有类似Python的os.path.devnull的东西,它指向PHP中给定平台的正确空设备(最好是v5.6) >)?

我在手册中没有看到任何明显的内容,phpinfo()$_SERVER$_ENV 并且谷歌搜索主要结果是 python 引用。我简直不敢相信根本就没有这样的事。我错过了什么?

最佳答案

PHP 没有内置这样的东西。然而,阅读PythonPHP来源揭示了一个非常简单的解决方案:

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'];
}

由于我无法访问上述所有操作系统,如果我错了,请纠正我。

关于php - 在 PHP 中查找特定于平台的空设备?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39984988/

相关文章:

C# 围绕 x 代码进行空检查的模块化方法

java - 为什么我的 Java 代码不获取 JTextfield 的值?

c++ - 空与零内存

ios - Firemonkey Windows/iOS 兼容代码

PHP cli 从用户那里获取输入然后转储到变量中可能吗?

php - MYSQL - 从标签搜索中仅检索完整单词

qt - 为 Symbian 编译多平台 Qt 应用程序

ios - 确定iOS应用平台

php - 如何修复PHP中的“ header 已发送”错误

php - 在一张表中插入会自动将 null 添加到另一张表中