我的代码如下:
if($_POST['user_id'] = ''){
//some statement;
}
在上述if
情况下,我只放了 single =
。PHP 没有显示任何错误,但我得到一个白色的空白页。有没有人有任何线索?
我的代码如下:
if($_POST['user_id'] = ''){
//some statement;
}
在上述if
情况下,我只放了 single =
。PHP 没有显示任何错误,但我得到一个白色的空白页。有没有人有任何线索?
if($_POST['user_id'] = '')
方法:
$_POST['user_id']
变成'' .. if ('')
// 总是假的
if($_POST['user_id'] == '')
方法:
$_POST['user_id']
比较 '' ..if ( comparison)
不确定是拖钓还是真正的问题...
您自己说的,您使用的是单个=
. 您需要 2 来检查是否相等。
if($_POST['user_id'] == ''){
//some statement;
}
当您使用单个等号时,您基本上是“设置$_POST['user_id']
为''
,然后测试它是否为true
)。由于''
计算结果为false
,因此您什么也得不到。
这个:
if($_POST['user_id'] = ''){
尝试将空字符串分配给$_POST['user_id']
. 这个:
if($_POST['user_id'] == ''){
是一个比较。您几乎应该总是做第二个 - 第一个覆盖 $_POST 中的值,并返回分配的值。
试试看
用它
$user_id = $_POST['user_id'];
if($user_id == ''){
//some statement;
}
插入的
if($user_id = ''){
//some statement;
}
或者尝试另一个
$user_id = $_POST['user_id'];
if(isset($user_id) && !empty($user_id)){
//some statement;
}
它不会触发任何错误,因为它是有效条件。
if($_POST['user_id'] = '')
等于
$_POST['user_id'] = '';
if($_POST['user_id']){
//Boolean comparison of a string. Empty = false. Not empty = true.
}
使用示例:
function division($var1, $var2){
if($var2 > 0){
return $var1/$var2;
return false;
}
if($result = division(50,2)){
//It returned 25 which is true!
}
if(!$result = division(50,0)){
//Returned FALSE because you can't divide by zero!
}