① php中isset
isset是判斷變數是否設置 如已設置返回true
加個感嘆號判斷返回值是否為空,就變成如變數未設置返回true
② PHP中empty和isset的區別
PHP中empty()和isset()的區別
empty()和和isset()用法的區別是很難搞清楚的,用法的差別不仔細去琢磨的話確實很難弄清楚。
一.共同點:
1.都可以判定一個變數是否為空;
2.都返回boolean類型,即true或false。
二.用法之間的區別:
isset()用來檢測變數是否設置,只能用於變數,因為傳遞任何其它參數都將造成解析錯誤。若想檢測常量是否已設置,可使用 defined() 函數。如果已經使用 unset() 釋放了一個變數之後,它將不再是 isset()。若使用 isset() 測試一個被設置成 NULL 的變數,將返回 FALSE。(注意的是一個 NULL 位元組("\0")並不等同於 PHP 的 NULL 常數)
empty()用來檢查一個變數是否為空。
之間最大的區別就是對於0的判斷,若用empty判斷會認為是空,用isset則認為不為空,舉個例子:
<?php
var $a=0;
//empty($a)返回true
if(empty($a)){
echo "判斷結果是空"
}
//isset($a)返回true
if(isset($a)){
echo "判斷結果不是空"
}
?>
③ php isset 是不是判斷 是否設置了全局變數
可以判斷所有變數,如果你聲明了那個變數是全局的,它判斷的就是全局,如果是局部變數,它判斷局部變數。這個函數的主旨是在判斷檢測變數是否已設置,至於是全局還是局部變數,由變數本身的性質決定。
④ 關於php中isset的疑問
推薦你使用var_mp,看看數組中有哪些下標:
var_mp($_POST);
建議同時檢查一下if條件里的值,看它是否為true
var_mp(isset($_POST['username']));
有可能是這樣,$_POST['username'] == '',是一個空字元串,但是isset只判斷下標是否存在。建議使用empty來檢查:
if(empty($_POST['username'])){
//...
}
empty()為true的條件是,下標存在,且不為空值。
但也要注意:
$_POST['number']=0;
var_mp($_POST['number']);//true
值為數字的情況要另行判斷,以防出錯。
⑤ PHP中empty和isset的區別
PHP的isset()函數 一般用來檢測變數是否設置
格式:bool isset ( mixed var [, mixed var [, ...]] )
功能:檢測變數是否設置
返回值:
若變數不存在則返回 FALSE
若變數存在且其值為NULL,也返回 FALSE
若變數存在且值不為NULL,則返回 TURE
同時檢查多個變數時,每個單項都符合上一條要求時才返回 TRUE,否則結果為 FALSE
版本:PHP 3, PHP 4, PHP 5
更多說明:
使用 unset() 釋放變數之後,它將不再是 isset()。
PHP函數isset()只能用於變數,傳遞任何其它參數都將造成解析錯誤。
檢測常量是否已設置可使用 defined() 函數。
PHP的empty()函數 判斷值為否為空
格式:bool empty ( mixed var )
功能:檢查一個變數是否為空
返回值:
若變數不存在則返回 TRUE
若變數存在且其值為""、0、"0"、NULL、、FALSE、array()、var $var; 以及沒有任何屬性的對象,則返回 TURE
若變數存在且值不為""、0、"0"、NULL、、FALSE、array()、var $var; 以及沒有任何屬性的對象,則返回 FALSE
版本:PHP 3, PHP 4, PHP 5
更多說明:
empty()的返回值=!(boolean) var,但不會因為變數未定義而產生警告信息。參見轉換為布爾值獲取更多信息。
empty() 只能用於變數,傳遞任何其它參數都將造成Paser error而終止運行。
檢測常量是否已設置可使用 defined() 函數。
例子: empty() 與 isset() 的一個簡單比較
復制代碼 代碼如下:
<?php
$var = 0;
// 結果為 true,因為 $var 為空
if (empty($var)) {
echo '$var is either 0 or not set at all';
}
// 結果為 false,因為 $var 已設置
if (!isset($var)) {
echo '$var is not set at all';
}
?>
注: 由於這是一個語言結構而非函數,因此它無法被變數函數調用。
注: empty() 只檢測變數,檢測任何非變數的東西都將導致解析錯誤。換句話說,後邊的語句將不會起作用: empty(addslashes($name))。
⑥ php中 isset 和empty的區別,以及一些常見的判斷有哪些、
isset是判斷變數是否定義,是否存在。
empty是判斷變數是否為空,空的意思有:null,0,false,''。
⑦ PHP中empty和isset的區別
empty() 判斷一個變數是否為「空」,isset() 判斷一個變數是否已經設置。
empty還會檢測變數是否為空、為零。當一個變數值為0,empty() 認為這個變數同等於空,即相當於沒有設置。
例如:
$id=0;
empty($id)?print "It's empty .":print "It's $id .";
//結果:It's empty .
print "<br>";
!isset($id)?print "It's empty .":print "It's $id .";
//結果:It's 0 .