Блог Александра Башкирова

ИТ и бизнес, компьютеры и ПО, фото, программирование и просто мысли…
Этот сайт в основном посвящен тому, что мне интересно вне работы. Ведется в порядке хобби.
Все изложенное на сайте - мое частное оценочное мнение и не может быть истолковано иначе.
Со всеми вытекающими из этого последствиями.

FluentPDO - библиотека для работы с PDO в PHP

Просмотров: 755Комментарии: 0
Alib.spb.ru

Слйчайно наткнулся на FluentPDO - библиотеку для работы с PDO в PHP. Смысл в том, что библиотека является слоем абстракции между приложением, PDO-расширением PHP и SQL. Потестировав, понял, что удобно. А значит, есть смысл рассказать.

Для начала - ссылки.

  1. FluentPDO на github: https://github.com/envms/fluentpdo
  2. Подробная статья о том, как её использовать: https://www.sitepoint.com/getting-started-fluentpdo/
Ну и - чем "зацепило".

Смысл в том, что от программиста при использовании библиотеки требуется создать PDO-объект для работы с БД, передать его в fluentpdo, и дальше, используя встроенные методы - работать с SQL.

Например:

$pdo = new PDO("mysql:dbname=testdb", "testuser", "testpassword");
$fpdo = new FluentPDO($pdo);

Дальше "всё просто", например, простой select * from mytable where id=$userid будет выглядеть так:

$query = $fpdo->from('mytable')->where('id', $userid);

И чтобы обработать результат:

foreach($query as $row){
    
print $row['field1'] . ' -- ' . $row['field2'] . '<br>';
 }

Если нужны конкретные столбцы, то:

$query = $fpdo->from('mytable')
   ->select(array('field1', 'field3'))->where('id', $userid);

Ну и чисто для иллюстрации - insert:

$values = array('field1' => 'testval1', 
     'field2' => 'testval2', 
     'field3' => 'testval3'); 
     
$query = $fpdo->insertInto('mytable')->values(values); 
  
$insert = $query->execute();

Также поддерживаются все основные операции, включая разнообразные update, join, delete и т.д.

Кстати, по приведенной выше ссылке примеров сильно больше. Скажу, что я попробовал на тесте FluentPDO - мне понравилось. Как-то упрощает жизнь, с точки зрения того, что не надо писать километровый код и запросы выглядят пологичнее. Ну и вся мощь PDO - типа единого синтаксиса работы с разными БД, безопасности (использование placeholder), получается как бы на нашей стороне :)

Оставьте комментарий!


Комментарий будет опубликован после проверки

     

  

(обязательно)