Question

Y at-il une méthode standard d'accès la base de données dans le fichier bootstrap.php avec CakePHP?

Plus précisément, je veux régler « putenv () » à un fuseau horaire qui est stocké dans la base de données. Y at-il une autre façon de réaliser la même chose que je devrais utiliser à la place?

Merci.

Était-ce utile?

La solution

Je ne pense pas que ce soit une bonne idée d'accéder à la base de données en bootstrap. Vous ne pouvez pas utiliser des modèles parce qu'ils ont pas encore été initialisé. Je pense que vous pouvez extraire les données de connexion et initialiser la connexion et exécuter des requêtes en utilisant la mysql_* de PHP, mais c'est une chose laide.

Toutefois, si vous devez exécuter certaines actions à chaque fois que votre application est accessible, je vous suggère de le placer dans le constructeur de AppController (fonction __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
    }
}

Si vous ne déclarez constructeur dans l'extension de classe que vous aurez même pas de ne pas changer quoi que ce soit depuis PHP appellera automatiquement constructeur parent (AppController).

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top