加入收藏 | 设为首页 | 会员中心 | 我要投稿 安卓应用网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > PHP > 正文

php 中 DIRECTORY_SEPARATOR 常量和 PATH_SEPARATOR常量讲解

发布时间:2020-05-26 12:05:11 所属栏目:PHP 来源:互联网
导读:php的内置变量DIRECTORY_SEPARATOR是一个显示系统分隔符的命令,DIRECTORY_SEPARATOR是php的内部常量,不需要任何定义与包含即可直接使用。PATH_SEPARATOR:include多个路径使用,在windows下,当你要include多个路径的话,你要用”;”隔开,但在linux下就使

一 DIRECTORY_SEPARATOR

php的内置变量DIRECTORY_SEPARATOR是一个显示系统分隔符的命令,DIRECTORY_SEPARATOR是php的内部常量,不需要任何定义与包含即可直接使用。

DIRECTORY_SEPARATOR:路径分隔符。

linux上就是‘/’

windows上是‘’ or ‘/’

在 Windows 中,斜线(/)和反斜线()都可以用作目录分隔符,在linux上路径的分隔符是/,这就导致了一个问题,比如开发机器是windows,有一个图片上传程序,,而我们又使用了()作为文件分隔符,调试机器上指定的上传文件保存目录是:

define('ROOT',dirname(__FILE__)."upload")

在本地调试都很正常,但是上传到linux服务器的时候会发现会出错。


这个问题就是出在文件的分隔符上,windows上习惯性的使用作为文件分隔符,但是在linux上人家是不认识这个标识的,人家只认识/,于是就要引入下面这个php内置变量了:DIRECTORY_SEPARATOR。


上面的写法可以改写为以下无错写法:

define('ROOT',dirname(__FILE__).DIRECTORY_SEPARATOR."upload");

二 PATH_SEPARATOR

PATH_SEPARATOR:include多个路径使用,在windows下,当你要include多个路径的话,你要用”;”隔开,但在linux下就使用”:”隔开的。

实例:

set_include_path(

implode(PATH_SEPARATOR,array(

$docRoot, // document root

get_include_path(), // old include path,

$docRoot . 'scripts/lib/', // local php library

)));

这2个常量的使用能够避免不同平台的兼容性问题。

(编辑:安卓应用网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读