这个的意义在哪里呢,我只用define()也能达到同样效果,而且代码量差距并不大,何解?
<?php
$p="";
//定义圆周率的两种取值
define("PI1",3.14);
define("PI2",3.142);
//定义值的精度
$height = "中";
//根据精度返回常量名,将常量变成了一个可变的常量
if($height == "中"){
$p = "PI1";
}else if($height == "低"){
$p = "PI2";
}
$r=1;
$area = constant($p)*$r*$r;
echo $area;
?>
和以下代码比较
<?php
//定义圆周率的两种取值
define("PI1",3.14);
define("PI2",3.142);
$r=1;
//定义值的精度
$height = "中";
//根据精度返回常量名,将常量变成了一个可变的常量
if($height == "中"){
$area = PI1*$r*$r;
}else if($height == "低"){
$area = PI2*$r*$r;
}
echo $area;
?>