27 lines
807 B
PHP
27 lines
807 B
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
/**
|
|
* Amorçage commun à TOUS les points d'entrée (pages comme API).
|
|
*
|
|
* Ouvre la session, établit la connexion PDO et vérifie que le schéma en base
|
|
* porte bien les tables et vues attendues par cette version du code. Ce contrôle
|
|
* est refait à chaque requête : c'est ce qui garantit qu'une migration oubliée
|
|
* se manifeste par un message explicite plutôt que par une erreur SQL au milieu
|
|
* d'un écran. Ajouter une table ou une colonne obligatoire impose donc de
|
|
* compléter les listes de SchemaModel.
|
|
*
|
|
* @return PDO Connexion partagée par les contrôleurs et les modèles.
|
|
*/
|
|
|
|
use App\Core\Session;
|
|
use App\Models\SchemaModel;
|
|
|
|
Session::start();
|
|
|
|
$pdo = require dirname(__DIR__) . '/db.php';
|
|
(new SchemaModel($pdo))->assertCurrent();
|
|
|
|
return $pdo;
|