或者操作数不起作用

时间:2017-09-04 15:18:57

标签: php

错误可能是愚蠢的,但我找不到挽救生命的错误。

我的程序中有这段代码:

$validate = (
  $num_rows > 1 || 
  $num_rows == 0);

if ($validate) {
  $data['code'] = 2;
} else {
  $data['code'] = 1;
  while ($a = $resultados->fetch_assoc()) {
    $data['response'] = $a;
  }
}

我相信它的写法正确,但是当运行时,我收到错误500并且日志读取:

  

语法错误:第21行意外的'$ num_rows'(T_VARIABLE)......

第21行是$ num_rows的第二次验证。

有什么建议吗?

提前致谢!

2 个答案:

答案 0 :(得分:1)

我想你只是忘了在行开头$validate = ...之前的代码行末尾添加分号

很高兴看到上面这行代码片段。

答案 1 :(得分:-1)

$validate = ($num_rows > 1||$num_rows == 0); 

试试这个,有时||和第二个条件之间的空格会产生奇怪的语法错误。我很好奇,你正在使用哪个IDE /文本编辑器。

我认为这不是PHP核心问题,但它来自其他方面,请给我们更多背景信息:)

顺便说一下,你可以用

代替你的病情
$validate = $num_rows >= 0;

它完全相同,你可以避免你的问题