phpwind获取目录函数实现原理不解?
我在测试phpwind8.3的一个获取目录的函数,代码如下:
<?php echo __FILE__; echo "<br/>"; /** * 获取目录路径 * * @param string $path 文件路径 * @return string */ function getdirname($path = null) { if (!empty($path)) { if (strpos($path, '\') !== false) { return substr($path, 0, strrpos($path, '\')) . '/'; } elseif (strpos($path, '/') !== false) { return substr($path, 0, strrpos($path, '/')) . '/'; } } return './'; } echo getdirname(__FILE__); echo "<br/>"; echo getdirname(); ?>
最后结果输出为:
D:wampwwwmy_phplearngetdirnamegetdirname.php D:wampwwwmy_phplearngetdirname/ ./
不解的是,为什么
strpos($path, '/') !== false
条件会成立?整个路径都没有/啊,有的只是
求助!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
引用来自“Deepseath”的答案
尝试写了下注释。
第一个判断就不是判断Win系统的“”的么。因为需要转义所以在写的时候需要写成“\”。
引用来自“Deepseath”的答案
呵呵,是针对非Win操作系统的,比如Linux下的路径一般格式为:/home/test/www
其实感觉这个函数与php的内置函数dirname类似,只不过会在目录的结尾加入“/”,而dirname没有
呵呵,是针对非Win操作系统的,比如Linux下的路径一般格式为:/home/test/www
其实感觉这个函数与php的内置函数dirname类似,只不过会在目录的结尾加入“/”,而dirname没有
尝试写了下注释。