Heim  >  Artikel  >  Backend-Entwicklung  >  php编程基础之isset与empty

php编程基础之isset与empty

WBOY
WBOYOriginal
2016-07-25 08:58:051021Durchsuche
本文介绍下,php编程基础中最常用的二个函数isset与empty,举几个例子,供大家学习参考。

在基础php编程中,最常用的两个函数,isset函与empty函数,实例如下:

<?php
/**
* empty函数与isset函数用例
* edit bbs.it-home.org
*/
    $arr[] = '';
    $arr[] = 0;
    $arr[] = NULL;
    $arr[] = null;
    $arr[] = '0';
    $arr[] = ' ';

    echo "isset\tempty\n";
    echo "-------------------------------\n";
    foreach ($arr as $key => $val)
    {
        echo isset($val) ? 'true': 'false';
        echo "\t";
        echo empty($val) ? 'true': 'false';
        echo "\n";
    }
?>

输出结果: isset empty ------------------------------- true true true true false true false true true true true false 有时在表单输入时,尤其是在做配置时,当填入0时,代表的是值是0,但不填值表示的可能是该值未定义。 此种情况可以用以下函数作判断:

<?php
    /**
     * 判断值是否为空
     *
     * 在php中,0,null,array()和''用empty函数判断时都会返回true, 但实际上很多情况下0是不应当被认为是空
     * 的。比如在设置参数值时,0可能表示值真的是0,而空字符串则可能表示该值未设置
     *
     * @site bbs.it-home.org
     * @param mixed $value 变量值
     * @param boolean $is_trim 是否要去掉前后空格
     * @return boolean
     */
    function isEmpty($value, $is_trim = false)
    {
        return $value === null || $value === array() || $value === '' || ($is_trim && is_scalar($value) && trim($value) === '');
    }

    echo isEmpty(0) ? '1':'0';
    echo isEmpty('0') ? '1':'0';
?>

输出结果: 00 可以看到输入0已不再被认为是空了,不论其是字符还是数字。

怎么样,有了以上的二个例子,对于php函数isset与empty函数的更爱,是不是又深了一层呢?!



Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn