База данных Быстрый старт: Пример кода
На данной странице содержится пример кода, демонстрирующий использование класса базы данных. Для получения полной информации, пожалуйста, обратитесь к отдельным страницам, описывающим каждую функцию.
Инициализация класса базы данных
Следующий код загружает и инициализирует класс базы данных на основе настроек вашей конфигурации:
$this->load->database();
После загрузки, класс готов к использованию, как описано ниже.
Примечание: Если всем страницам требуется доступ к базе данных, вы можете подключиться автоматически. Подробности см. на странице подключения.
Стандартный запрос с несколькими результатами (Объектная версия)
$query = $this->db->query('SELECT name, title, email FROM my_table');
foreach ($query->result() as $row)
{
echo $row->title;
echo $row->name;
echo $row->email;
}
echo 'Total Results: ' . $query->num_rows();
Функция result() выше возвращает массив объектов. Пример: $row->title
Стандартный запрос с несколькими результатами (Массивная версия)
$query = $this->db->query('SELECT name, title, email FROM my_table');
foreach ($query->result_array() as $row)
{
echo $row['title'];
echo $row['name'];
echo $row['email'];
}
Функция result_array() выше возвращает массив стандартных индексов массива. Пример: $row[‘title’]
Стандартный запрос с одним результатом
$query = $this->db->query('SELECT name FROM my_table LIMIT 1');
$row = $query->row();
echo $row->name;
Функция row() выше возвращает объект. Пример: $row->name
Стандартный запрос с одним результатом (Массивная версия)
$query = $this->db->query('SELECT name FROM my_table LIMIT 1');
$row = $query->row_array();
echo $row['name'];
Функция row_array() выше возвращает массив. Пример: $row[‘name’]
Стандартная вставка
$sql = "INSERT INTO mytable (title, name) VALUES (".$this->db->escape($title).", ".$this->db->escape($name).")";
$this->db->query($sql);
echo $this->db->affected_rows();
Запрос Query Builder
Шаблон Query Builder предоставляет упрощенный способ получения данных:
$query = $this->db->get('table_name');
foreach ($query->result() as $row)
{
echo $row->title;
}
Функция get() выше извлекает все результаты из указанной таблицы. Класс Query Builder содержит полный набор функций для работы с данными.
Вставка Query Builder
$data = array(
'title' => $title,
'name' => $name,
'date' => $date
);
$this->db->insert('mytable', $data); // Produces: INSERT INTO mytable (title, name, date) VALUES ('{$title}', '{$name}', '{$date}')
© 2014–2020 British Columbia Institute of Technology
Licensed under the MIT License.
https://codeigniter.com/userguide3/database/examples.html