Работа с MySQL через MySQLi

12 окт. 2015 г.
(обновлено 3 нояб. 2017 г.)

Подключение к базе database на хосте localhost пользователя user с паролем password:

$mysqli = new mysqli("localhost", "user", "password", "database");
if ($mysqli->connect_errno) {
    echo 'Не удалось подключиться к MySQL: (' . $mysqli->connect_errno . ') '. $mysqli->connect_error;
}

Установка кодировки UTF-8

$mysqli->set_charset("utf8");

Произвольный запрос (в данном случае создание таблицы со столбцами id типа integer и name типа varchar максимальной длиной 40 символов):

$mysqli->query("CREATE TABLE test(id INT, name varchar(40))");

Построчный вывод таблицы

$query = "SELECT * FROM test";
if ($result = $mysqli->query($query)) {
    while ($row = $result->fetch_assoc()) {
        echo ' id = ' . $row['id'] . '
';
        echo ' name = ' . $row['name'] . '
';
    }
    /* удаление выборки */
    $result->free();
}

Если нужен результат в виде объекта, то $result->fetch_object() и $row->id, $row->name.

Количество строк:

$num_rows = $result->num_rows;

Вывод информации о последнем запросе

print_r($mysqli->info);

Получить id последней вставленной записи

$id = $mysqli->insert_id;

Подключиться к другой базе данных

$mysqli->select_db('database2');

Закрыть соединение

$mysqli->close;