Maison > développement back-end > tutoriel php > PHP,有什么简便的方法,判断提交的某字段不为空?

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

WBOY
Libérer: 2016-06-06 20:48:37
original
1221 Les gens l'ont consulté

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>
Copier après la connexion

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

<code>if(trim($var) != ''){
    // code here
}
</code>
Copier après la connexion

<code class="lang-php">if(!empty($var)){
    //code here
}
</code>
Copier après la connexion

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

<code class="lang-php">if( isset( $_GET['password'] ) ) {
    // do something
}
</code>
Copier après la connexion
Étiquettes associées:
php
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal