2016-08-31 2 views
-1
public function query($sql, $params = array()){ 
     $this->_error = false; 
     if(this->_query = $this->_pdo->prepare($sql)){ 
      $x = 1; 
      if(count($params)){ 
       foreach($params as $param){ 
        $this->_query->bindValue($x, $param); 
        $x++; 
       } 
      } 

      if($this->_query->execute()){ 
       echo "Success"; 
      } 
     } 
    } 

다음 오류가 발생하지만 모두 올바르게 수행되고 있습니다. 내가 뭘 잘못하고 있는지에 대한 어떤 방향을 갖기를기도합니다.구문 분석 오류 : 예기치 않은 '->'(T_OBJECT_OPERATOR)

+0

감사합니다. 나는 항상이 간과 한 실수를 간과하고 ... $ this-> and this-> .. 나는 그들에게 더 많은주의를 기울여야 만한다. –

+0

$ this와 같은 세 번째 오류 -> _ query this not -> _ query –

+0

모든 단일 문자는 프로그래밍에서 중요합니다. 실수가 눈에 띄지 않도록 가능한 한 코드를 깨끗하게 유지하십시오. – tadman

답변

2

문제는 세 번째 줄에 :

if(this->_query 

은 다음과 같아야합니다

if($this->_query 

당신의 변수를 기억은 달러 기호로 시작해야합니다.

또한 구문 분석 오류가 표시 될 때 구문 오류를 해석 할 수 없도록 구문 분석 오류가 표시됩니다 (예 : ->). 바르게.

+1

이와 같은 간단한 오타는 진정한 해답이 아니라 단지 의견을 남기고 투표를 마감 할 자격이 있습니다. – Barmar

+1

그는 변수가'$'를 필요로하는지 모른다는 것은 아닙니다. 왜냐하면 그는 함수의 다른 모든 장소를 올바르게했기 때문입니다. 이것은 단지 오타였습니다. – Barmar

+0

그래,하지만 다른 관련 질문을 볼 때, 그들은 실제 문제가있는 곳에서 온통있다. 이것이 미래에 누군가가 자신의 변수에 달러 기호를 두 번 확인하는 데 도움이된다면, 그럴 가치가있을 것입니다. –

관련 문제