我想使用此isset(empty($sc))
的组合,但收到此错误
解析错误:语法错误,第9行/var/www/html/find.php中的意外T_EMPTY
当某人从表单发帖时,只有在表单已提交时才应检查$sc
是否为空。
答案 0 :(得分:2)
目前还不清楚你想要实现的目标。 isset(empty(…))
没有任何意义。也许你的意思是:
if(isset($_POST['submit'])) {
if(empty($_POSt['sc'])) echo 'sc is empty';
else echo 'sc is non-empty';
} else {
echo '$_POST[\'submit\'] is not set';
}
答案 1 :(得分:1)
你的代码没有意义。
您的$sc
变量似乎是全局变量,对吗?
然后更好的代码是:
if (isset($sc) && !empty($sc)) {
// your code here
}
答案 2 :(得分:0)
empty()
函数返回一个布尔值,具体取决于变量是否为空。你不能在标量值(true或false,或字符串,数字,char或任何其他原始类型)上运行isset()
,你需要针对变量运行它。
这有效:
$var = 'hello';
isset($var);
返回 true
这 WONT 工作:
isset('hello');
这相当于你正在做的事情。
答案 3 :(得分:0)
您不能在函数上使用isset。
Isset用于检测传递给函数的变量是否确实存在,但是现有的带NULL变量仍将被视为未设置。
将函数返回到isset是不正确的,因为它显然总是未设置,这是一个暂时的状态。
您想要做的是:
if(!isset($sc) || empty($sc)){ $errors[] = 'Missing SC'; }
快乐编码