Jeśli nie chcesz używać Doctrine ORM ani nawet Doctrine DBAL, absolutnie nic nie stoi na przeszkodzie, aby używać PDO/MySQLi bezpośrednio.
-
Zdefiniuj instancję PDO jako usługę DIC:
<service id="pdo" class="PDO"> <argument>dns</argument> <argument>user</argument> <argument>password</argument> <call method="setAttribute"> <argument>2</argument> <!-- use exception for error handling --> </call> </service>
-
Przekaż instancję PDO dla każdej usługi wymagającej połączenia z bazą danych:
<service id="my.custom.service" class="My\Custom\Service"> <argument type="service" id="pdo" /> </serivce> --- namespace My\Custom; class Service { public function __construct(PDO $pdo) { } }