『壹』 php 類中如何調用類外的變數
你好,有兩種方式可以解決問題。
1,將$m設置為超級全局變數..........****這種方法不推薦使用****
$GLOBALS['m']="mmmmmmm";//將m設置為超級全局變數
$a=$GLOBALS['m'];//在類的方法體中將m的值賦給a
2,將m的值作為參數傳給link 方法
function link($par){//設置形參
$a=$par;//賦值
}
link($m);//在調用link方法時,將$m傳給方法體
如有其它問題可Q22940449
『貳』 php靜態屬性跟常量有什麼區別啊
類的靜態屬性. 會在類文件載入的時候, 就初始化.
屬性值是可以更改的.
常量...一旦定義了. 就無法變更值..
這應該算是最大區別.
另外, 常量只能是簡單的數據類型(如: int , string , boolean,float , double) ,
類的靜態屬性, 可以是php所支持的任意變數類型(但初始化的時候. 只能是簡單數據類型, 數組)
『叄』 關於php當中static關鍵字,資料上說只能初始化一次。但是數組變數在定義時賦值會被下一次初始化覆蓋!
你定義了static 就是靜態變數
但是靜態變數的初始化只進行一次,而且是定義靜態變數的時候初始化
static $a = array(1,2,3);
print_r($a);
static $a = array();
這樣實際上是定義了兩次靜態變數,並初始化,實際做會執行其中一個
就是後面這個
上面的代碼實際上會被編譯器編程這樣
<?php
function f1(){
static $a = array();
print_r($a);
print_r($a);
}
function f2(){
static $a = array();
$a[] = 1;
$a[] = 2;
$a[] = 3;
print_r($a);
print_r($a);
}
『肆』 php變數初始化。用null。0。'' 那個好
習慣上都是用0的,因為0代表你初始化的這個變數時整形,而空則說明暫時不確定你初始化的這個變數的類型是什麼,哪個好你應該明白了吧
『伍』 php求助 static修飾的變數不是只運行一次嗎圖裡面為什麼運行2次
static靜態變數只被初始化一次,是函數或類的內部保存值
這里,相當於你的newfile.php執行結束之前,$temperature=25;只會被初始化一次。
即第一次調用ee()時$temperature初始化為25,
第二次調用ee()時,$temperature沒有在被重新初始化,而是沿用函數內部的保存值25
你可以在static$temperature=25後面加兩句,
++$temperature;echo$temperature.'<br/>';
在運行會列印26和27
ee()函數執行了多少次,就會在25上加多少
因為$temperature只有第一次被初始化為25,後面都是沿用之前運算後的值