如何检查多个字符串变量是否为空或空?

时间:2014-07-19 17:33:31

标签: javascript php mysql

我正在尝试检查一些字符串变量,如果它们为null或空,这里是我写的代码,但我知道它有问题:

if (!(empty($classid)&&(empty($dayid))&&(empty($academicyearid))&&(empty($semesterid)))) {
echo "<script type='text/javascript'>alert('The strings are empty');</script>";}

我将使用mysqli_fetch_array函数从数据库中获取这些字符串的输入。 问题是我尝试了一个简单的例子,说明为什么上面的代码不起作用。这是我试过的简单示例:

<?php
$d='';$x='1';
if (1<3){
        if (!(empty($x)&&(empty($d)))){

        echo "esjte null";
        die();
        }
}
echo "it didnt work";

?>

尽管其中一个是空的,我的意思是$ d变量它将回显字符串&#34; ejste null&#34;我该如何修复它以便检查两个变量是否都是空的而不仅仅是一个。 THX。

4 个答案:

答案 0 :(得分:1)

你错过了感叹号&amp;&amp;这检查两者是否都不为空,如果你想检查其中一个是否为空,则替换&amp;&amp; (和)|| (或)运营商

<?php
$d='';$x='1';
if (1<3){
    if (!empty($x) && !empty($d)){
    echo "esjte null";
    die();
    }
}
echo "it didnt work";
?>

运营商的例子:

 if (!empty($x) && !empty($d)) // if BOTH are not empty
 if (!empty($x) || !empty($d)) // if AT LEAST ONE is not empty

答案 1 :(得分:0)

is_null是一个函数,用于查找变量是否为NULL。你可以参考这个。

http://php.net/manual/en/function.is-null.php

答案 2 :(得分:0)

empty(var)如果变量为空,则返回true,但您使用!empty(var),返回false。

因此,当您测试一个空值时,您的测试没有通过。

// AND test if both are empty == true
if(empty($x) && empty($y)) 

// OR test at least one is empty == true
if(empty($x) || empty($y))

感叹号会反转您的测试结果。

// if BOTH are empty this returns false and you test fails
if (!empty($x) && !empty($d)) 

答案 3 :(得分:0)

试试这个:

if (empty($classid) && empty($dayid) && empty($academicyearid) && empty($semesterid)) 
{echo "<script type='text/javascript'>alert('The strings are empty');</script>";}