informatique:dev:fluentpdo

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Prochaine révision
Révision précédente
informatique:dev:fluentpdo [2019/01/04 10:53] – créée bn8informatique:dev:fluentpdo [2019/01/04 10:59] (Version actuelle) – [Utilisation d'une méthode d’agrégation] bn8
Ligne 8: Ligne 8:
 ===== Utilisation basique ===== ===== Utilisation basique =====
  
 +==== Connexion ====
 +
 +<code php>
 +// Configuration
 +$db_dsn="pgsql:host=localhost;port=5432;dbname=myapp";
 +$db_user="myapp";
 +$db_pwd="mysecret";
 +$db_options=array();
 +
 +try {
 +        $pdo = new PDO($db_dsn, $db_user, $db_pwd, $db_options);
 +        $fpdo = new FluentPDO($pdo);
 +}
 +catch(Exception $e) {
 +        die("Fail to connect to DB (DSN : '$db_dsn') : ".$e->getMessage());
 +}</code>
 ===== SELECT ===== ===== SELECT =====
  
Ligne 136: Ligne 152:
       -> where('username', 'toto')       -> where('username', 'toto')
       -> execute();</code>       -> execute();</code>
 +
 +==== Debug des requêtes ====
 +
 +<code php>$fpdo -> debug = function ($q) {
 +        $time  = sprintf('%0.3f', $q->getTime() * 1000) . ' ms';
 +        $rows  = ($q->getResult()) ? $q->getResult()->rowCount() : 0;
 +        $query = $q->getQuery();
 +        $msg = "# DB query ($time; rows = $rows) : $query";
 +
 +        $parameters = $q->getParameters();
 +        if ($parameters) {
 +                if (is_array($parameters)) {
 +                        $msg .= "\n# Parameters: '" . implode("', '", $parameters) . "'";
 +                }
 +                else {
 +                        $msg .= "\n# Parameters: '" . varDump($parameters) . "'";
 +                }
 +        }
 +
 +        echo $msg."\n";
 +};</code>
  
  
  • informatique/dev/fluentpdo.txt
  • Dernière modification : 2019/01/04 10:59
  • de bn8