자,이게 이상 해요 !!! 아래 코드를 실행하면 인스턴스화되지 않은 객체의 치명적인 오류가 발생하지만 PHP 버전 5.1.6을 실행하고 있습니다. 이 코드 줄을 주석 해제하자마자 // $ cb_db = new cb_db (USER, PASSWORD, NAME, HOST); 모든 것이 작동합니다. 메서드 내에서 전역으로 $ cb_db 개체를 선언 했음에도 불구하고. 어떤 도움이라도 대단히 감사하겠습니다.비 객체에서 member 함수 query()를 호출하십시오.
require_once (ROOT_CB_CLASSES. 'db.php');
$cb_db = new cb_db(USER, PASSWORD, NAME, HOST);
class cb_user {
protected function find_by_sql($sql) {
global $cb_db;
//$cb_db = new cb_db(USER, PASSWORD, NAME, HOST);
$result_set = $cb_db->query($sql);
$object_array = array();
while($row = $cb_db->fetch_array($result_set)) {
$object_array[] = self::instantiate($row);
}
return $object_array;
}
}
왜 수업에서 글로벌을 사용 하시겠습니까? 확장이 훨씬 더 적절하게 보이면 매개 변수로 객체를 전달할 수도 있습니다 ... – Dormilich
클래스를 사용하여 전역을 제거하지 않았습니까? –