Mysql
 sql >> Datenbank >  >> RDS >> Mysql

MySQL mit Symfony2

Wenn Sie Doctrine ORM oder gar Doctrine DBAL nicht verwenden möchten, hält Sie absolut nichts davon ab, PDO/MySQLi direkt zu verwenden.

  1. PDO-Instanz als DIC-Dienst definieren:

    <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>
    
  2. Übergeben Sie die PDO-Instanz für jeden Dienst, der eine Datenbankverbindung erfordert:

    <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) { }
    }