项目作者: jworksuk

项目描述 :
A very thin layer over the PDO class.
高级语言: PHP
项目地址: git://github.com/jworksuk/extra-pdo.git
创建时间: 2018-04-08T14:40:19Z
项目社区:https://github.com/jworksuk/extra-pdo

开源协议:MIT License

下载


ExtraPDO

Latest Version on Packagist
Software License
Build Status

A very thin layer over the PDO class.

Install

Via Composer

  1. $ composer require jworksuk/extra-pdo

Usage

  1. require_once '/path/to/vendor/autoload.php';
  2. use JWorksUK\ExtraPDO;
  3. use Acme\Model;
  4. $pdo = ExtraPDO::createMySqlConnection(
  5. 'databaseName',
  6. 'databaseHost',
  7. 'databaseUser',
  8. 'databasePassword'
  9. );
  10. $model = $pdo
  11. ->executeStatement('SELECT * FROM todos WHERE id=:id', [
  12. 'id' => '15983acf-022f-303a-bfef-a096eaebbf7c'
  13. ])
  14. ->fetchAndMap(function ($row) {
  15. return new Model(
  16. $row['id'],
  17. $row['name'],
  18. $row['list_id'],
  19. new \DateTime($row['updated_at']),
  20. new \DateTime($row['created_at'])
  21. );
  22. });
  23. $model->doModelThing();
  24. $models = $pdo
  25. ->executeStatement('SELECT * FROM todos WHERE list_id=:listId', [
  26. 'listId' => '05aab6f6-e991-3c59-a980-832cca75c578'
  27. ])
  28. ->fetchAllAndMap(function ($row) {
  29. return new Model(
  30. $row['id'],
  31. $row['name'],
  32. $row['list_id'],
  33. new \DateTime($row['updated_at']),
  34. new \DateTime($row['created_at'])
  35. );
  36. });
  37. foreach ($models as $model) {
  38. $model->doModelThing();
  39. }

Testing

  1. $ composer test