變量和常量的賦值
<?php
$p = "PII";
define("PI",3.14);
define($p,3.14);
echo PI;
echo "<br />";
echo PII;
echo "<br />";
echo $p;
?>
輸出結(jié)果為:
3.14
3.14
PII
這個(gè)例子可以發(fā)現(xiàn):
在 $p="PII"后,define($p,3.14) 實(shí)際上是?define("PII',3.14),而 $p仍然是等于 PII;
同時(shí)嘗試了將例子中的PI和PII去除引號(hào),發(fā)現(xiàn)結(jié)果一樣;
想不明白的主要有兩點(diǎn):
1、賦值過(guò)程中 加不加引號(hào)的區(qū)別?
2、$p="PII" 后,實(shí)際等于是將變量 $p的至賦值給常量PII?
2015-09-18
這樣運(yùn)行的結(jié)果就是3.14 3.14 3.14,你在把$p = PII;加上引號(hào)你就知道區(qū)別了,加上引號(hào)就是字符串不加就是常量,還有$p="PII"的意思是將字符串PII賦值給變量$p
2015-09-21
<?php
$p = PII; //$p賦值為常量PII
echo $p; //輸出為常量,此時(shí)為PII本身
echo "<br />";
define("PI",3.14);
define("PII",3.14);//
$p ="PII"; //$p賦值為字符串的PII
echo PI;
echo "<br />";
echo PII;
echo "<br />";
echo $p; //輸出為字符串PII
echo "<br />";
$p = PII; //$p賦值為常量PII,此時(shí)PII已定義為3.14
echo $p; //輸出為常量
?>
這個(gè)例子應(yīng)該可以解釋得明白了。
2015-09-21
又測(cè)試了幾次,發(fā)現(xiàn)在$p="PII"后,對(duì)于"PII"的賦值,是不會(huì)影響到$p的值的。感謝您的解答!