php 中 DIRECTORY_SEPARATOR 常量和 PATH_SEPARATOR常量讲解
一 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个常量的使用能够避免不同平台的兼容性问题。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |