标签:php
你能帮助我改进我的编码风格吗?:)在我需要检查的一些任务中 – 变量为空或包含某些东西.为了解决这个任务,我通常会做以下几点.
检查 – 是否设置此变量?如果它已经设置 – 我检查 – 它是空的还是没有?
<?php
$var = '23';
if (isset($var)&&!empty($var)){
echo 'not empty';
}else{
echo 'is not set or empty';
}
?>
我有一个问题 – 我应该在empty()之前使用isset() – 是否有必要? TIA!
解决方法:
这取决于你在寻找什么,如果你只是想看看它是否为空,只需使用空,因为它检查它是否也被设置,如果你想知道是否设置了某些东西使用isset.
空检查是否设置了变量,如果是,则将其检查为null,“”,0等
Isset只是检查它是否设置,它可能是任何非空的
如果为空,则以下内容被视为空:
>“”(空字符串)
> 0(0为整数)
> 0.0(0作为浮点数)
>“0”(0为一个字符串)
> NULL
>假
> array()(一个空数组)
> var $var; (声明的变量,但在类中没有值)
从http://php.net/manual/en/function.empty.php起
如评论中所述,缺乏警告对于empty()也很重要
empty() is the opposite of (boolean) var, except that no warning is
generated when the variable is not set.
关于isset
isset() will return FALSE if testing a variable that has been set to NULL
您的代码可以正常:
<?php
$var = '23';
if (!empty($var)){
echo 'not empty';
}else{
echo 'is not set or empty';
}
?>
例如:
$var = "";
if(empty($var)) // true because "" is considered empty
{...}
if(isset($var)) //true because var is set
{...}
if(empty($otherVar)) //true because $otherVar is null
{...}
if(isset($otherVar)) //false because $otherVar is not set
{...}
标签:php 来源: https://codeday.me/bug/20190915/1804870.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。