bootstrap.php 파일에서 CakePHP를 사용하여 데이터베이스에 액세스하는 표준 방법이 있습니까?CakePHP에서 bootstrap.php에서 데이터베이스에 액세스
은 특히 나는 데이터베이스에 저장된 시간대에 "putenv()를"로 설정합니다. 대신에 사용해야하는 것과 동일한 것을 성취 할 수있는 또 다른 방법이 있습니까?
감사합니다.
bootstrap.php 파일에서 CakePHP를 사용하여 데이터베이스에 액세스하는 표준 방법이 있습니까?CakePHP에서 bootstrap.php에서 데이터베이스에 액세스
은 특히 나는 데이터베이스에 저장된 시간대에 "putenv()를"로 설정합니다. 대신에 사용해야하는 것과 동일한 것을 성취 할 수있는 또 다른 방법이 있습니까?
감사합니다.
부트 스트랩에서 데이터베이스에 액세스하는 것이 좋지 않다고 생각합니다. 아직 초기화되지 않았으므로 모델을 사용할 수 없습니다. 난 당신이 연결 데이터를 추출하고 연결을 초기화하고 PHP의 mysql_*
을 사용하여 쿼리를 실행할 수 있다고 생각하지만 그건 못생긴 일이다.
그러나 앱에 액세스 할 때마다 특정 작업을 실행해야한다면 AppController
생성자 (__construct
함수)에 삽입하는 것이 좋습니다.
class AppController extends Controller {
public function __construct() {
// do your magic here
// call parent constructor
parent :: __constructor();
}
}
class YourSpecificController extends AppController {
public function __construct() {
// call parent contructor (this) will cause your magic happen
parent :: __constructor();
// extra controller initialization instructions
}
}
PHP는 자동으로 부모 (AppController
) 생성자를 호출하기 때문에 당신은 당신도 아무 것도 변경하지 않아도됩니다 확장 클래스의 생성자를 선언하지 않는 경우.
답변 해 주셔서 감사합니다. 훌륭하게 작동합니다. –
나는 database.php가 더 유용 할 것이라고 생각합니다. 내장 된 옵션이 아닌, 조직을위한 것일 수도 있습니다. – helloandre