2014-10-23 2 views
-2

Я не понимаю, почему я получаю ошибку Parse: синтаксическая ошибка, неожиданное «if» (T_IF) в этом операторе if. Я знаю, что вы получите эту ошибку, если забудете; но я этого не сделал. Может ли кто-нибудь увидеть что-нибудь, что я пропустил? Спасибо!!Ошибка синтаксиса ошибки синтаксического анализа неожиданно, если T_IF

public function action($action, $table, $where = array()) { 
    if (count($where) === 3) { 
     $operators = array('=', '>', '<', '>=', '<='); 

     $field  = $where[0]; 
     $operator = $where[1]; 
     $value  = $where[2]; 

     if (in_array($operator, $operators)) { 
      $sql = "{$action} FROM {$table} WHERE {$field} {$operator} ?"; 
      if (!$this->query($sql, array($value))->error()) { <-- This is line that is throwing the error 
       return $this; 
      } 
     } 

    } 
    return false; 
} 

Если вы хотите, я могу поставить всю свою db.class.php здесь, но я не вижу причин для. Просто спроси.

ответ

1

Когда я вставил код в PhpStorm я могу увидеть дополнительный символ в конце $sql = "{$action} FROM {$table} WHERE {$field} {$operator} ?";

я удалить этот символ и все проверки. Когда я вставляю этот символ здесь, он невидим. Попробуйте удалить некоторые символы до и после, затем введите их обратно.

+0

Это странно, я знал, что ничего не вижу. Спасибо вам за это!! –

0

У вас есть U + FEFF в конце строки перед вашим if-блоком. Удалено, и он работает

+0

Почему это не отображается в моем текстовом редакторе, но я открыл его в другом, и он был там. Я использую возвышенный текст 2 –

Смежные вопросы