我有这 2 段代码,我一直在玩,但似乎无法让逻辑坚持其中任何一个。
我试图查看给定字符串的末尾是否有“/”,如果没有则添加它。
$path = '.';
if (substr($path, 0, -1) != '/')
$path .= '/';
和
if (strrpos('/', $path) !== true)
$path .= '/';
我遇到的问题是,如果我使 $path
等于 './
那么我得到这个作为输出 .//
这是我遇到问题的地方的片段
if (!is_array($paths))
$this->classPath[] = $paths;
else
$this->classPath = $paths;
foreach ($this->classPath as $path) {
if (strrpos('/', $path) !== true)// || substr_count($path, '/') >= 0)
$path = $path . '/';
//else
//$this->classPath[] = $path;
//echo '0';
$pathArr[] = $path;
原文由 Eli 发布,翻译遵循 CC BY-SA 4.0 许可协议
你可能想多了。虽然
substr()
方法可以完美运行,但使用rtrim()
删除任何尾部斜杠然后添加一个可能更简单。注意:这将修剪多个尾部正斜杠。所以
.//////
变成./