2017-09-04 122 views
-1

錯誤可能是愚蠢的,但我找不到保存我的生活的錯誤。或操作數不工作

我有這樣一段代碼在我的程序:

$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和日誌閱讀:

Syntax error: Unexpected '$num_rows' (T_VARIABLE) on line 21...

第21行是$ num_rows的第二個驗證。

有什麼建議嗎?

在此先感謝!

+3

你可以寫你想要什麼,使用此代碼做的原因是無法弄清楚 –

+2

有您發佈的代碼沒有語法錯誤,你能添加一些之前和之後的線? – iainn

+0

'$ validate =($ num_rows> 1 || $ num_rows == 0);' 試試這個,有時'||'和第二次驗證之間的空間會產生一個奇怪的語法錯誤 – Mcsky

回答

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

試試這個,有時||之間和第二個條件的空間做一個奇怪的語法錯誤。我很好奇,您正在使用哪種IDE /文本編輯器。

我認爲這不是一個PHP的核心問題,但它來自別的東西,請給我們更多的上下文:)

順便說一句,您可以通過更換您的病情

$validate = $num_rows >= 0; 

這是完全一樣的,你避免你的問題

+0

你能舉一個例子說明發生這種情況嗎?因爲如果是這樣,這是PHP核心中的一個錯誤,應該這樣報告。 – iainn

+0

Nop我不能,也許它不是一個PHP的問題,也許是一個IDE。 – Mcsky

+0

我沒有使用IDE,我使用ATOM構建代碼,然後在php上運行它。之前我曾經遇到過這個問題,但是爲了避免這個問題,我終於重寫了自己的條件。 –

1

我覺得你剛纔忘了一個分號自帶的代碼行的末尾您符合$validate = ...

開始將是真棒看到線上述此代碼段之前。

+0

我也認爲問題是由於缺少分號引起的。給出的線看起來很完美。 –