php不允許用戶提交空表單(php空值判斷)
可以修改代碼,添加些判斷:
if(empty($_POST['name'])){
echo "俗話說(shuō)的好,雁過(guò)留聲人過(guò)留名<br />";
}
elseif(empty($_POST['comment'])){
echo "矮油,多說(shuō)幾句吧~";
}
else{
$sql = "INSERT INTO myblog_comments(blog_id, dateposted, name, comment) VALUES(" . $validentry . ", NOW(), '" . $_POST['name'] . "', '" . $_POST['comment'] . "');";
mysql_query($sql);
header("Location: http://". $_SERVER['HTTP_HOST'] . $_SERVER['SCRIPT_NAME']."?id=" . $validentry);
}
PHP空值判斷
empty 和 isset 雖然都是變量處理函數(shù),它們都用來(lái)判斷變量是否已經(jīng)配置,它們卻是有一定的區(qū)別:empty還會(huì)檢測(cè)變量是否為空、為零。當(dāng)一個(gè)變量值為0,empty 認(rèn)為這個(gè)變量同等于空,即相當(dāng)于沒(méi)有設(shè)置。
<?php
/*比如檢測(cè) $id 變量,當(dāng) $id=0 時(shí),用empty 和 isset 來(lái)檢測(cè)變量 $id 是否已經(jīng)配置,兩都將返回不同的值—— empty 認(rèn)為沒(méi)有配置,isset 能夠取得 $id 的值:*/
$id=0;
empty($id)?print "It's empty .":print "It's $id .";
//結(jié)果:It's empty .
print "<br>";
!isset($id)?print "It's empty .":print "It's $id .";
//結(jié)果:It's 0 .
?>
總結(jié)PHP中,“NULL” 和 “空” 是2個(gè)概念。
isset 主要用來(lái)判斷變量是否被初始化過(guò)
empty 可以將值為 “假”、“空”、“0”、“NULL”、“未初始化” 的變量都判斷為TRUE
is_null 僅把值為 “NULL” 的變量判斷為TRUE
var == null 把值為 “假”、“空”、“0”、“NULL” 的變量都判斷為TRUE
var === null 僅把值為 “NULL” 的變量判斷為TRUE
所以我們?cè)谂袛嘁粋€(gè)變量是否真正為“NULL”時(shí),大多使用 is_null,從而避免“false”、“0”等值的干擾。
相關(guān)文章
PHP實(shí)現(xiàn)的一致性哈希算法完整實(shí)例
這篇文章主要介紹了PHP實(shí)現(xiàn)的一致性哈希算法,以完整實(shí)例形式分析了PHP哈希算法的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-11-11
PHP的構(gòu)造方法,析構(gòu)方法和this關(guān)鍵字詳細(xì)介紹
這篇文章介紹了PHP的構(gòu)造方法,析構(gòu)方法和this關(guān)鍵字,有需要的朋友可以參考一下2013-10-10
在PHP中檢查PHP文件是否有語(yǔ)法錯(cuò)誤的方法
在網(wǎng)上找了一下。剛開(kāi)始以為 token_get_all()函數(shù)能處理語(yǔ)法錯(cuò)誤的問(wèn)題,結(jié)果發(fā)現(xiàn),它只是做簡(jiǎn)單的詞法分析。沒(méi)有辦法。后來(lái)到論壇上去問(wèn)了一下2009-12-12
php數(shù)組函數(shù)序列之a(chǎn)rray_pop() - 刪除數(shù)組中的最后一個(gè)元素
定義和用法array_pop() 函數(shù)刪除數(shù)組中的最后一個(gè)元素。2011-11-11
解析php利用正則表達(dá)式解決采集內(nèi)容排版的問(wèn)題
本篇文章是對(duì)php利用正則表達(dá)式解決采集內(nèi)容排版問(wèn)題進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06

