php中常量DIRECTORY_SEPARATOR用法深入分析

 更新时间:2014年11月14日 10:48:13   投稿:shichen2014  
这篇文章主要介绍了php中常量DIRECTORY_SEPARATOR用法深入分析,涉及针对Linux路径分隔符不支持\的情况,具有一定的实用价值,需要的朋友可以参考下

本文实例讲述了php中常量DIRECTORY_SEPARATOR用法。分享给大家供大家参考。具体如下:

DIRECTORY_SEPARATOR在php是什么意思呢,在什么时候使用DIRECTORY_SEPARATOR最合理呢?下面来给各位介绍一下php DIRECTORY_SEPARATOR常量。

我们知道DIRECTORY_SEPARATOR是一个PHP常量,代表反斜杠,因为windows系统和linux系统的反斜杠不一样。在 Windows 中,斜线(/)和反斜线(\)都可以用作目录分隔符,在linux上路径的分隔符是"/"。

那么在PHP代码中什么时候要用DIRECTORY_SEPARATOR代表反斜杠呢?
比如这句话:

复制代码 代码如下:
require_once dirname(__FILE__).DIRECTORY_SEPARATOR . './../../../wp-config.php';
require_once dirname(__FILE__).DIRECTORY_SEPARATOR.'inc/options.php';

这两句PHP代码,为什么前面部分用DIRECTORY_SEPARATOR,而后面部分却用"/"呢
众所周知,windows下的是\和/,而LINUX下的是/

在程序本地运行很正常,上传到服务器后,发现图片没有显示出来,图片链接是绝对路径 var/,而且当中带有 \ 但是我记得这个路径已经处理成相对路径的

复制代码 代码如下:
$path    = dirname(dirname(dirname(__FILE__))).'\\';
$search = array( $path, '\\');
$replace = array( '', '/');
return str_replace($search,$replace,$this->tempfolder).$this->filename_prefix.$public.'.jpg';

各位也可以看出来了,第一行代码的用在LINUX "\\", 就不行。

解决的办法是 用PHP 预定义常量DIRECTORY_SEPARATOR来代替'\','/'这样的路径分隔符,以前觉得既然windows,LINUX 都支持/,那都用成 / 得了,这是没错的。可是从这个例子可以看出,当要对路径字符串进行处理的时候,就比较危险了,所以最好还是用DIRECTORY_SEPARATOR吧

希望本文所述对大家的PHP程序设计有所帮助。

相关文章

  • 在Linux系统下一键重新安装WordPress的脚本示例

    在Linux系统下一键重新安装WordPress的脚本示例

    这篇文章主要介绍了在Linux系统下一键重新安装WordPress的脚本示例,尤其适用于VPS服务器上进行操作,需要的朋友可以参考下
    2015-06-06
  • php+ajax实现商品对比功能示例

    php+ajax实现商品对比功能示例

    这篇文章主要介绍了php+ajax实现商品对比功能,涉及PHP基于ajax的数据提交及序列化、变量等运算相关操作技巧,需要的朋友可以参考下
    2019-04-04
  • PHP大小写问题:函数名和类名不区分,变量名区分

    PHP大小写问题:函数名和类名不区分,变量名区分

    这篇文章主要介绍了PHP大小写问题,php中变量名是区分大小写的,而函数名与类名是不区分的
    2013-06-06
  • PHP中文乱码解决方案

    PHP中文乱码解决方案

    PHP+MYSQL做网站开发通常都会碰到浏览器输出中文字符时乱码,这个问题的原因主要是因为HTML内容编码,PHP文件编码和MySQL数据库编码这三者不一致造成的。今天我们来具体探讨下出现中文乱码后的解决方案。
    2015-03-03
  • php检测url是否存在的方法

    php检测url是否存在的方法

    这篇文章主要介绍了php检测url是否存在的方法,涉及php中get_headers及正则匹配的技巧,非常具有实用价值,需要的朋友可以参考下
    2015-04-04
  • 如何在PHP中调用Python并获取运行结果

    如何在PHP中调用Python并获取运行结果

    这篇文章主要介绍了如何在PHP中调用Python并获取运行结果,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-08-08
  • ThinkPHP中的接口的安全防护措施小结

    ThinkPHP中的接口的安全防护措施小结

    这篇文章主要为大家详细介绍了一些在 ThinkPHP 中对接口进行防护的措施,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2025-01-01
  • 对比分析php中Cookie与Session的异同

    对比分析php中Cookie与Session的异同

    这篇文章主要通过多方面对比分析php中Cookie与Session的区别,分别对Cookie与Session做一个简单介绍和总结,感兴趣的小伙伴们可以参考一下
    2016-02-02
  • PHP中断言函数的使用详解

    PHP中断言函数的使用详解

    这篇文章主要介绍了PHP中断言函数的使用详解,帮助大家更好的理解和学习使用PHP,感兴趣的朋友可以了解下
    2021-04-04
  • php设计模式之适配器模式原理、用法及注意事项详解

    php设计模式之适配器模式原理、用法及注意事项详解

    这篇文章主要介绍了php设计模式之适配器模式原理、用法及注意事项,结合实例形式分析了php适配器模式的定义、用法及出现的问题与解决方法,需要的朋友可以参考下
    2019-09-09

最新评论