Domanda

Esiste un metodo standard di accesso al database nel file bootstrap.php con CakePHP?

In particolare voglio impostare "putenv ()" ad un fuso orario che è memorizzato nel database. C'è un altro modo per raggiungere la stessa cosa che dovrei usare, invece?

Grazie.

È stato utile?

Soluzione

Non credo che sia una buona idea per accedere database in bootstrap. Non è possibile utilizzare i modelli, perché non sono ancora stati inizializzati. Penso che si potrebbe estrarre i dati di connessione e inizializzare il collegamento ed eseguire query utilizzando mysql_* di PHP, ma questa è una cosa brutta.

Tuttavia, se avete bisogno di eseguire determinate azioni ogni volta che la vostra applicazione è accessibile Vorrei suggerire ponendolo in AppController costruttore (funzione __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
    }
}

Se non si dichiara il costruttore ad estendere classe non sarà nemmeno bisogno di cambiare nulla da PHP chiamerà automaticamente genitore costruttore (AppController).

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top