❶ php中聲明$a = null,echo $a+1,計算機是怎麼把這語句變成指令執行的
不,並不是沒有分配空間。
在PHP里,null是一個值,換一句話來說,它是一個數據類型,這個數據類型里只有null這一種;
它是有自己意義的一種數據;
而弱類型的PHP里,像null、false這樣的數值被隱式轉換成數字,並參與到計算的時候,會認為它是數字0;
這是PHP的特性;
而一個變數不賦值,和賦值為null是不一樣的,賦值為null之後,它是有自己內存地址指向的,並不是像沒有賦值的變數沒有指向。
具體指到了哪裡,就不是我們知道的了。
另外,我們習慣於銷毀一個變數使用$a=null;
但更好的卻是:unset($a); 這樣才更加徹底嘛!
❷ PHP中變數=""和變數為null是同一個意思嗎
不是。
變數不存在就是變數未定義;null說明變數本身在內存中存在,只是值為null。
你可以寫個簡單的php試試:
直接輸出 <?php echo $a; ?> 這種情況下,你之前並未定義變數a,運行後會報變數a未定義的錯的;
但你這樣寫 <?php $a=null; echo $a; ?> 這樣就沒有問題。
❸ php,is_null 和==null為何結果不同
首先,你小寫null是錯誤的。
其次要判斷是否NULL,應該使用===,否則變數為空時也會相等。
❹ PHP中關於NULL的作用
特殊的 NULL 值表示一個變數沒有值。NULL 類型唯一可能的值就是 NULL。
在下列情況下一個變數被認為是 NULL:
被賦值為 NULL。
尚未被賦值。
被 unset()。
var $link_id=NULL 和var $link_id 是同一個效果,只不過var $link_id=NULL 是顯示聲明為NULL。 也許這是ecshop的編程規范來的。
一個剛聲明的未被賦值的變數又何須unset呢。
var $link_id=NULL是聲明值為空的變數,unset是銷毀一個有值或者無值的變數,即使你銷毀後再使用,也只是使用了一個變數名一樣的新變數,而不是你unset之前的變數。樓主覺得有矛盾嗎。
❺ PHP 如何設置 變數 $value1 的值為 NULL
// $runoob_author="菜鳥驛站";
// $runoob_count=NULL;
$sql="INSERT INTO countnull_tbl" .
"(runoob_author,runoob_count)" .
"VALUES" .
// "('$runoob_author','$runoob_count')";
"('菜鳥驛站',NULL)";
*注釋掉的方法的結果是0,未注釋掉的結果是NULL;
個人分析僅供參考:runoob_count在創建數據表的時候定義的是整型,"('$runoob_author','$runoob_count')"中的'$runoob_count'就相當於『NULL',是字元串類型,當作為數據插入數據表的時候就會有一個的數據類型轉換,即字元串轉換成整型,「NULL」轉化成整型就是0,可通過一下代碼進行簡單驗證:
<?php
$a=null;
$b="null";
$c=(int)$a;
$d=(int)$b;
echo "a=" . $a;
echo "<br>";
echo "b=" . $b;
echo "<br>";
echo "c=" . $c;
echo "<br>";
echo "d=" . $d;
?>
運行結果:
a=
b=null
c=0
d=0
❻ PHP中如何檢測一個值為null的變數是否存在
PHP 中判斷變數是否為 null 可以使用 is_null() 或者 ($var === null) 來判斷,至於變數是否存在,由於 null 值會干擾到 isset() 所以只能用捕捉異常來處理。代碼如下:
try{
if($var===null){
return'變數的值為null';
}else{
return'變數的值不為null';
}
}catch(Exception$exception){
return'變數不存在';
}
❼ php 數組為null怎麼判斷
$array = null;
if (is_null($array )) {
echo '數組是null';
}
❽ php 對象值為null
魔術方法是兩個下劃線,童鞋__construct
❾ thinkphp 查不出數據等於null
$id=$performance->field('p_staff_id')->select();//業績表的
返回的$id是個二維數組
所以
$id=$performance->field('p_staff_id')->select(); 改為
$id=$performance->getField('p_staff_id', true); // 返回一維數組
$db= M('staff')->where(array('id'=>array('in', $id)))->select();
❿ php頁面輸出json類型值為null怎麼辦
php輸出的幾種模式echo()可以一次輸出多個值,多個值之間用逗號分隔。echo是語言結構(languageconstruct),而並不是真 正的函數,因此不能作為表達式的一部分使用。echo是php的內部指令,不是函數,無返回值。print()函數print()列印一個值(它的參數),如果字元串成功顯示則返回true,否則返回false。只能列印出簡單類型變數的值(如int,string),有返回值 print_r()可以把字元串和數字簡單地列印出來,而數組則以括起來的鍵和值得列表形式顯示,並以Array開頭。但print_r()輸出布爾值和NULL的結果沒有意義,因為都是列印"\n"。因此用var_mp()函數更適合調試。print_r是函數,可以列印出比較復雜的變數(如數組,對象),有返回值var_mp()判斷一個變數的類型與長度,並輸出變數的數值,如果變數有值輸的是變數的值並回返數據類型。此函數顯示關於一個或多個表達式的結構信息,包括表達式的類型與值。數組將遞歸展開值,通過縮進顯示其結構。php返回數據 看你要返回到哪,用ajax就得輸出 ajax只認得(總之就是不認php數組)整型浮點型bool型字元型用方法調用return返回就行介面也得用輸出才行希望能夠幫得到你。