Home > php教程 > php手册 > body text

PHP中如何判断字符串为空?

WBOY
Release: 2016-06-10 15:09:18
Original
2149 people have browsed it
 
Copy after login

 

在开发淘宝SDK模板时,在module.xml中经常需要配置变量以便于用户进行模板的编辑。但难免用户在输入参数时,忘记了输入参数。此是,我们就得使用在PHP代码中加入一段判断用户是否输入了参数的代码,常用的有两种方式:

方式一:使用$_MODULE['变量名']的方式

if($_MODULE['var']) {
     // 这是表示已经输入了值
}

else {
     // 这里表示未输入值
}
Copy after login

 这种方法很简单,我也一直常用。

 

方式二:先赋值,再用empty判断。

但有时候,为了代码的紧凑性,经常需要在模块的PHP文件中的最前面初始化变量的值。然后再逐一判断用户哪些输入是有效的,如果出现了错误,那就应该在模块中展示出错误给用户。如下:

$mod_title = $_MODULE['title'];
$mod_style = $_MODULE['style'];
$mod_href = $_MODULE['href'];

// ……
Copy after login

 为了不使模板出现不正常的现象,我们可以需要对$mod_style进行判断,只是指定了$mod_style的值时,才能根据它对模板进行展示。此时,一般是直接对变量$mod_style进行判断了,而我们最常见的错误方式是:

if($mod_style == "") { //.... }
Copy after login

 或者是:

if($mod_style) { //.... }
Copy after login

 在实际的应用当中,却并不能如我们所愿,在我亲自测试之后发现,不论使用上面哪种方式,即使我不输入任何值,if后面的条件值总是为true。所以,我一般将其改写成了如下形式:

if($_MODULE['style']) { //... }
Copy after login

 如此一来便能正确的解决问题,但是输入 $mod_style 比输入 $_MODULE['style'] 更加迅速,也更不容易出错,所以我还是希望使用$mod_style来判断,结果采用了如下代码:

if(!empty($mod_style)) { // .... }
Copy after login

 经测试,正常了!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Recommendations
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!