我有这段代码:
while (list ($key, $val) = each ($ethnicity)) {
if ($val == '')
$ethnicity = '';
break;
}
我收到错误消息:Assignment in condition, Change to ==
但是我无法将其更改为==
或者它无效。
任何人都在向我解释为什么会这样?
修改。
错误是第一行。
我也在这里得到同样的错误:
while (($row = mysql_fetch_row ($result)))
{
$sms_providerchecked0= $row[3];
$to_return_email12 = $cell."@$sms0";
}
在第一行
答案 0 :(得分:2)
$row = mysql_fetch_row($result);
while ($row) {
$sms_providerchecked0= $row[3];
$to_return_email12 = $cell."@$sms0";
$row = mysql_fetch_row($result);
}
答案 1 :(得分:1)
你是否尝试在条件周围添加额外的一组或括号?
IE:
while ((list ($key, $val) = each ($ethnicity)))
{
if ($val == '')
$ethnicity = '';
break;
}
此外,您使用的是什么IDE,因为这很可能只是您的IDE在防止无意识分配条件时过于热心的问题。
编辑:
当您使用zend,并且您的代码完全有效时,看起来如果您想要停止查看警告,以便您可以按照您想要的方式编写代码(这是一个错误的警告),您可以禁用该警告 窗口|首选项,PHP |语义分析。
答案 2 :(得分:1)
while ( false!=(list($key, $val)=each($ethnicity)) ) {
我没有zend工作室所以这可能会或可能不会成功...