Комментарии 9
Работа над классом абстракции баз данных еще длится, хотя уже сейчас можно рассмотреть некоторые примеры и дать себе представление о том, как все будет работать дальше.
А где собственно абстракция? Это просто очередной query builder, коих сотни на packagist. Ну и очередная реализация row data gateway. Круто че.
+3
$db = Config\Database::connect();
Если раньше в файле были просто перечислены элементы массива, то теперь это простой класс с тем же массивом.
Config\Database? Объект конфигурации, который, внезапно, умеет connect()?
Если раньше в файле были просто перечислены элементы массива, то теперь это простой класс с тем же массивом.
Config\Database? Объект конфигурации, который, внезапно, умеет connect()?
+1
Все фреймворки считают своей обязанностью переизобрести PDO?
+2
у вас там ошибка в комментариях
/ Get results as objects.
$results = $query->getResultArray();
// Get results as arrays
$results = $query->getResultObject();
/ Get results as objects.
$results = $query->getResultArray();
// Get results as arrays
$results = $query->getResultObject();
+1
> Ниже краткий список новых функций:
> first() — метод для получения первого результатапредставляет собой удобный метод для получения самого первого результата.
> increment() и decrement() методы
> chunk() — метод цикла по всем результатам запроса. Позволит обрабатывать огромное количество строк не убивая сервер и не делая проблемы с памятью.
может стоит уже наконец открыть для себя генераторы и итераторы а не клепать эти убогие велосипеды? и это еще позорище смеет называется фрейморк для php7?
// first()
print_r($pdo->query(«select * from users»)->current());
// chunk()
foreach ($pdo->query(«select * from users») as $user) {
print_r($user);
}
// chunk()
$withFullInfo = function ($users) {
foreach ($users as $user) {
$user[«cap»] = //… build capabilities
yield $user;
}
};
foreach ($withFullInfo($pdo->query(«select * from users»)) as $user) {
print_r($user);
}
// $results = $query->getResultArray();
iterator_to_array($pdo->query(«select * from users»));
// $db = Config\Database::connect();
$db = require «config/connection.php»;
в файле config/connection.php:
return new PDO('mysql:host=localhost;dbname=test', «user», «passw»);
> first() — метод для получения первого результатапредставляет собой удобный метод для получения самого первого результата.
> increment() и decrement() методы
> chunk() — метод цикла по всем результатам запроса. Позволит обрабатывать огромное количество строк не убивая сервер и не делая проблемы с памятью.
может стоит уже наконец открыть для себя генераторы и итераторы а не клепать эти убогие велосипеды? и это еще позорище смеет называется фрейморк для php7?
// first()
print_r($pdo->query(«select * from users»)->current());
// chunk()
foreach ($pdo->query(«select * from users») as $user) {
print_r($user);
}
// chunk()
$withFullInfo = function ($users) {
foreach ($users as $user) {
$user[«cap»] = //… build capabilities
yield $user;
}
};
foreach ($withFullInfo($pdo->query(«select * from users»)) as $user) {
print_r($user);
}
// $results = $query->getResultArray();
iterator_to_array($pdo->query(«select * from users»));
// $db = Config\Database::connect();
$db = require «config/connection.php»;
в файле config/connection.php:
return new PDO('mysql:host=localhost;dbname=test', «user», «passw»);
0
21 век, DDD шагает по планете, а я читаю статью про очередной квери билдер-обертку над ПДО
0
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Слой базы данных CodeIgniter 4