ホームページ  >  記事  >  php教程  >  PHP的预定义常量

PHP的预定义常量

WBOY
WBOYオリジナル
2016-06-06 19:49:101180ブラウズ

今天看鸟哥的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下面还得把它改过来。

但突然忘记那个常量具体怎么拼写了,又不好意思查手册PHP的预定义常量。肿么办?只能用“get_defined_constants()”把预定义常量全部打印一遍,然后自己个找了:

print '<pre class="brush:php;toolbar:false">';
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.
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。