- Использование построителя запросов.
CodeIgniter 4 предоставляет класс построителя запросов, который предлагает удобный и безопасный способ создания и выполнения выбранных запросов. Вот пример:
$query = $this->db->table('users');
$query->select('name, email');
$query->where('status', 'active');
$results = $query->get()->getResult();
- Написание необработанных SQL-запросов.
Если вы предпочитаете писать необработанные SQL-запросы, CI4 позволяет вам это сделать. Вот пример:
$sql = "SELECT name, email FROM users WHERE status = 'active'";
$results = $this->db->query($sql)->getResult();
- Использование классов моделей.
CI4 поощряет использование классов моделей для взаимодействия с базой данных. Вы можете определить модель для своей таблицы и выполнять через нее запросы выбора. Вот пример:
namespace App\Models;
use CodeIgniter\Model;
class UserModel extends Model {
protected $table = 'users';
protected $allowedFields = ['name', 'email'];
public function getActiveUsers() {
return $this->where('status', 'active')->findAll();
}
}
$userModel = new \App\Models\UserModel();
$results = $userModel->getActiveUsers();
- Разбиение на страницы с помощью выборочных запросов.
При работе с большими наборами данных часто необходимо реализовать разбиение на страницы. CI4 обеспечивает встроенную поддержку нумерации страниц. Вот пример:
$model = new \App\Models\UserModel();
$perPage = 10;
$currentPage = $this->request->getVar('page') ?? 1;
$results = $model->paginate($perPage);
В этой статье мы рассмотрели различные методы выполнения запросов выборки в CodeIgniter 4 (CI4). Мы обсудили использование Query Builder, написание необработанных SQL-запросов, использование классов моделей и реализацию нумерации страниц. В зависимости от ваших предпочтений и требований проекта вы можете выбрать наиболее подходящий метод для эффективного извлечения данных из базы данных.