<?php $p = "PII"; define("PI",3.14); define($p,23); echo PI; echo "<br />"; echo PII; ?>
上面的代码中,虽然$p="PII",,,,后面给$p进行赋值,但是并没有给PII进行赋值啊,为什么最后PII会输出23呢? 是否可以理解为,PII这个常量存在于类似Java里的静态域中,$p存的只是一个指向PII的地址值,所以给$p赋值的时候就相当于给静态域中的PII赋值,所以输出PII才会为23? 我的理解是否正确?
$p 是个变量,给变量定义常量是不可取的。倒不如直接define("PII",23);(初学者的理解,仅供参考。)