PHP:跨OS的路径通用化的一种好方法(斜线方向)

前端之家收集整理的这篇文章主要介绍了PHP:跨OS的路径通用化的一种好方法(斜线方向)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我唯一关心的是能够处理跨OS的路径,主要是关于目录分隔符的后退和正斜杠.

我当时正在使用DIRECTORY_SEPARATOR:

>写作很长
>路径可能来自不同的来源,不一定由您控制

我目前正在使用:

function pth($path)
    {
        $runningOnWindows = (strtoupper(substr(PHP_OS,3)) === 'WIN');
        $slash = $runningOnWindows ? '\\' : '/';
        $wrongSlash = $runningOnWindows ? '/' : '\\' ;
        return (str_replace($wrongSlash,$slash,$path));
    }

只是想知道我正在重新发明的语言中没有任何内容,

是否已经有一个内置的PHP功能来做到这一点?

I’m aware of DIRECTORY_SEPARATOR,

However: 1. It’s long to write

懒惰永远不是任何理由

$path = (DIRECTORY_SEPARATOR === '\\')
      ? str_replace('/','\\',$subject)
      : str_replace('\\','/',$subject);

要么

$path = str_replace(array('/','\\'),DIRECTORY_SEPARATOR,$path);

这将在一个步骤中将“正确的”替换为自身,但这并没有任何区别.

如果您确定存在路径,则可以使用realpath()

$path = realpath($path);

但是,这根本不需要,因为每个操作系统都将正斜杠/理解为有效的目录分隔符(甚至是窗口).

原文链接:https://www.f2er.com/php/136692.html

猜你在找的PHP相关文章