就是把原代码的7放到13的后面,理应也是先写规则再选择精度啊,怎么不能运行呢
写后边,还if判断啥啊。
理解起来很简单啊,代码执行顺序是从上到下,如果是更改过的代码,在执行if语句的时候,你没有定义height的值,他怎么执行呢?你执行的if语句是根据height的具体值来变化的,就像你根据一个游戏来制定了规则,但这个游戏根本不存在,规则还有个屁用,逻辑就错误了。
不知道你说的是不是这样
<?php $p=""; //定义圆周率的两种取值 define("PI1",3.14); define("PI2",3.142); //定义值的精度 //根据精度返回常量名,将常量变成了一个可变的常量 if($height == "中"){ $p = "PI1"; }else if($height == "低"){ $p = "PI2"; } $height = "中"; $r=1; $area= constant($p)*$r*$r; echo $area; ?>
我的理解:注意代码执行的先后顺序,先要定义height才能在if中使用。先给height赋值为中或者低,if语句中才能判断得出来啊。