Case learning

bad case:

<?php

foreach($user_detail AS $val) {
    if(!empty($val->portrait)) { //如果這個循環從來沒有到達過
        $portrait[] = $val->portrait;
    }
}
#此時,$portrait爲NULL,而不是Array。

//下面的結果一定是NULL,不論$image_ids是什麼。
$image_ids = array_merge($image_ids, $portrait);

good case:

<?php

$portrait = array(); //作聲明
foreach($user_detail AS $val) {
    if(!empty($val->portrait)) { //如果這個循環從來沒有到達過
        $portrait[] = $val->portrait;
    }
}

#此時,$portrait爲Array,而不是NULL。

//下面函數的結果是正確的。
$image_ids = array_merge($image_ids, $portrait);


結論:PHP變量在使用前最好進行聲明,即使PHP是弱類型的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章