PHP 中 define 和 defined 的区别
1. define
define 用来定义一个常量,常量也是全局范围的,不用管作用域就可以在脚本的任何地方访问常量。
一个常量一旦被定义,就不能再改变或者取消定义,例如:
define("mimvp", "http://mimvp.com");
echo "mimvp: " . mimvp;// mimvp: http://mimvp.com
define("mimvp", "http://mimvp.com"); define 变量 mimvp 为 http://mimvp.com
2. defined
defined 是一个函数,用来检测常量是否被定义,若常量存在,则返回 true,否则返回 false,例如:
define("mimvp", "http://mimvp.com");
if(defined("mimvp")) {
echo "true";// true
} else {
echo "false";
}
3. isset()
判断一个变量是否定义
$mimvp = "http://mimvp.com";
if(isset($mimvp)) {
echo "mimvp is set : " . $mimvp;// mimvp is set : http://mimvp.com
}
4. function_exists()
判断一个函数是否定义
if(function_exists('date_default_timezone_set')) {
echo "date_default_timezone_get : " . date_default_timezone_get();// Asia/Shanghai
date_default_timezone_set("Asia/Chongqing");
echo "date_default_timezone_get : " . date_default_timezone_get();// Asia/Chongqing
}
5. file_exists()
判断一个文件是否存在
$file = 'index.php';
if (file_exists($file)) {
echo "file is exist : $file";// file is exist : index.php
} else {
echo "file is not exist : none";
}
参考推荐: