首頁 > 後端開發 > php教程 > PHP,有什么简便的方法,判断提交的某字段不为空?

PHP,有什么简便的方法,判断提交的某字段不为空?

WBOY
發布: 2016-06-06 20:48:37
原創
1220 人瀏覽過

PHP,有什么简便的方法,判断提交的某字段不为空?

回复内容:

PHP,有什么简便的方法,判断提交的某字段不为空?

提交的某字段啊!一定是_POST_GET甚至_REQUEST,而不是单纯讨论$var啊!

要防三个情况:

  1. 提交中根本没有这个字段(如果不处理,下标不存在将直接引发运行时错误)
  2. 提交的字段为空
  3. 提交的字段trim()之后为空

如果是原生的PHP,我推荐的步骤如下:

  1. 原则是先预处理$_POST
  2. $_POST中所有元素的首尾空格剥了。
  3. $_POST中的所有空元素扔了。
  4. 这样,数组中幸存的元素,就都不是空的。判断元素是否存在即可。

注意第二和第三步,千万不要傻傻的用foreach自己循环,最好是使用数组函数里的几个遍历函数。代码:

<code class="lang-php">$_POST = array_map('trim', $_POST);
$_POST = array_filter($_POST);
$result = array_key_exists('fieldname', $_POST);
if ($result) {
    // do whatever you wish
}
</code>
登入後複製

这样足够简便了,不过带来的问题是可移植性差(因为需要依赖前边做过的预处理)。如果想要可移植性又好,看着又简单,判断又全面的,自己写函数去吧。

<code>if(trim($var) != ''){
    // code here
}
</code>
登入後複製

<code class="lang-php">if(!empty($var)){
    //code here
}
</code>
登入後複製

个人比较喜欢用isset()判断,全搞定。

<code class="lang-php">if( isset( $_GET['password'] ) ) {
    // do something
}
</code>
登入後複製
相關標籤:
php
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板