今天看鸟哥的yaf的一个demo,在入口文件中,作者有这么一个定义: define(DS, /);define(APP_PATH, dirname(__FILE__).DS....DS.application.DS); 作者的意思是吧DS定义为路径分隔符,我突然记得PHP有一个常量定义了路径分隔符,并且那个常量是自适应平台的
今天看鸟哥的yaf的一个demo,在入口文件中,作者有这么一个定义:
define("DS", '/');
define("APP_PATH", dirname(__FILE__).DS.'..'.DS.'application'.DS);作者的意思是吧"DS"定义为路径分隔符,我突然记得PHP有一个常量定义了路径分隔符,并且那个常量是自适应平台的。作者完全可以不用这么定义,因为如果较真儿的话,在win下面还得把它改过来。
但突然忘记那个常量具体怎么拼写了,又不好意思查手册
。肿么办?只能用“get_defined_constants()”把预定义常量全部打印一遍,然后自己个找了:
print '';
print_r(get_defined_constants());
print '';
get_defined_constants这个函数可以返回所有的预定义的常量到一个数组中。
打印出来,嘿,还真多!我想要的是这个:
[DIRECTORY_SEPARATOR] => \
[PATH_SEPARATOR] => ;
DIRECTORY_SEPARATOR,windows下面被定义成了 “\”;
于是开始那段代码可以改成:
define("DS", DIRECTORY_SEPARATOR);
define("APP_PATH", dirname(__FILE__).DS.'..'.DS.'application'.DS);
顾名思义呢,DIRECTORY_SEPARATOR就是“目录分隔符”,directory separator.
本文原创发布php中文网,转载请注明出处,感谢您的尊重!