Расширение mysqli позволяет вам получить доступ к функциональности, которую предоставляет MySQL версии 4.1 и выше. Больше информации о сервере баз данных MySQL вы можете получить по адресу » http://www.mysql.com/.
Документация MySQL находится по адресу » http://dev.mysql.com/doc/.
Некоторые части данной документации включены из руководства по MySQL с разрешения MySQL AB.
Чтобы эти функции были доступны, PHP должен быть собран с поддержкой расширения mysqli.
Note: Расширение mysqli разработано для работы с MySQL версии 4.1.3 и выше. Для работы с более старыми версиями, обратитесь к документации к расширению MySQL.
Для установки расширения mysqli для PHP, используйте конфигурационную директиву --with-mysqli=mysql_config_path/mysql_config, гдеmysql_config_path - путь к утилите mysql_config, которая поставляется с MySQL версии 4.1 и больше.
Если вы хотите установить расширение mysql вместе с mysqli, вы должны использовать одинаковые клиентские библиотеки во избежание возможных конфликтов.
Поведение этих функций зависит от установок в php.ini.
Имя | Значение по-умолчанию | Область изменения | История изменений |
---|---|---|---|
mysqli.max_links | "-1" | PHP_INI_SYSTEM | Доступен начиная с PHP 5.0.0. |
mysqli.default_port | "3306" | PHP_INI_ALL | Доступен начиная с PHP 5.0.0. |
mysqli.default_socket | NULL | PHP_INI_ALL | Доступен начиная с 5.0.0. |
mysqli.default_host | NULL | PHP_INI_ALL | Доступен начиная с PHP 5.0.0. |
mysqli.default_user | NULL | PHP_INI_ALL | Доступен начиная с PHP 5.0.0. |
mysqli.default_pw | NULL | PHP_INI_ALL | Доступен начиная с PHP 5.0.0. |
Дальнейшие детали и определения PHP_INI_* констант смотрите в разделе конфигурационные изменения.
Краткое разъяснение конфигурационных директив.
Максимальное число соединений MySQL на процесс.
TCP порт, используемый по умолчанию для соединения с сервером баз данных если другое значение явно не указано. Если значение по умолчанию не указано, оно будет получено из переменной среды окружения MYSQL_TCP_PORT, директивы mysql-tcp в файле /etc/services или константы MYSQL_PORT, которая задаётся во время компиляции, в указанном порядке. Win32 использует только константу MYSQL_PORT.
Имя сокета по умолчанию, которое используется для соединения с локальной базой данных если имя сокета было не указано явно.
Имя сервера, которое используется если имя не было указано явно. Это имя не используется в безопасном режиме.
Имя пользователя по умолчанию, используемое если имя не было указано явно. Игнорируется в безопасном режиме.
Пароль по умолчанию, используемый если пароль не был явно указан. Игнорируется в безопасном режиме.
Представляет соединение между PHP и базой данных MySQL.
mysqli - конструктор нового объекта mysqli
autocommit - включает или выключает автофиксацию изменений базы данных
change_user - изменение пользователя для выбранного соединения с базой данных
character_set_name - возвращает кодировку по-умолчанию (default character set) для соединения с базой данных
close - закрывает открытое ранее соединение
commit - фиксирует текущую транзакцию
connect - открывает новое соединение с сервером баз данных MySQL
debug - выполняет операции по отладке
dump_debug_info - возвращает отладочную информацию
get_client_info - возвращает версию клиента
get_host_info - возвращает используемый тип соединения
get_server_info - возвращает информацию о сервере MySQL
get_server_version - возвращает версию сервера MySQL
init - инициализирует объект mysqli
info - получает информацию о последнем выполненном запросе
kill - требует от сервера убить mysql-поток
multi_query - выполняет множественный запрос
more_results - проверяет наличие дополнительных результатов в выполняемом мульти-запросе
next_result - получает следующий результат в выполняемом мульти-запросе
options - устанавливает опции
ping - проверяет соединение с сервером или переподключается, если соединение недоступно
prepare - подготавливает SQL-запрос
query - выполняет запрос
real_connect - создает соединение с сервером MySQL
escape_string - экранирует спецсимволы в строке для использования в SQL-выражениях
rollback - откат текущей транзакции
select_db - выбирает базу данных по-умолчанию
set_charset - устанавливает кодировку клиента по-умолчанию
ssl_set - устанавливает параметры ssl
stat - получает текущее состояние системы
stmt_init - инициализирует выражение для использования с mysqli_stmt_prepare
store_result - получает набор данных от последнего запроса
thread_safe - возвращает информацию о том, собран ли клиент с поддеркой надежных потоков
use_result - получает небуферизованный набор данных из последнего запроса
affected_rows - получает количество затронутых рядов предыдущей MySQL-операцией
client_info - возвращает версию MySQL-клиента в виде строки
client_version - возвращает версию MySQL-клиента в целочисленном виде
errno - возвращает номер ошибки для последнего вызова функции
error - возвращает строку, содержащую текст ошибки для последнего вызова функции
field_count - возвращает количество колонок в последней выборке
host_info - возвращает строку с представлением используемого типа соединения
info - возвращает информацию о последнем выполненном запросе
insert_id - возвращает автоматически созданный id, использованый в последнем запросе
protocol_version - возвращает версию использованного протокола MySQL
server_info - возвращает строку, которая содержит номер версии сервера
server_version - возвращает целочисленный номер версии сервера
sqlstate - возвращает строку, содержащую код ошибки SQLSTATE для последней ошибки
thread_id - возвращает ID потока для текущего соединения
warning_count - возвращает количество предупреждений (warnings), сгенерированных во время выполнения последнего SQL-выражения
Представляет подготовленное выражение.
bind_param - присваивает переменные подготовленному выражению
bind_result - присваивает переменные подготовленному выражению для хранилища результатов
close - закрывает подготовленное выражение
data_seek - переходит на произвольную строку в наборе данных выражения
execute - выполняет подготовленное выражение
fetch - получает результат из подготовленного выражения в связанные переменные
free_result - освобождает занятую результатом память для переданного дескриптора выражения
prepare - подготавливает SQL-запрос
reset - сбрасывает подготовленное выражение
result_metadata - получает набор данных из подготовленного выражения для получения метаинформации
send_long_data - отправляет информацию на сервер по частям
store_result - полностью буферизирует набор данных из подготовленного запроса
affected_rows - возвращает количество затронутых в результате последнего выполнения выражения рядов
errno - возвращает код ошибки для последнего выполненного выражения
error - возвращает текст ошибки для последнего выполненного выражения
field_count - возвращает количество полей в результате запроса
id - возвращает идентификатор выражения
insert_id - возвращает значение, созданное подготовленным выражением поля с AUTO_INCREMENT
num_rows - возвращает количество рядов в результате запроса
param_count - возвращает количество параметров для переданного подготовленного выражения
sqlstate - возвращает строку, содержащую код ошибки SQLSTATE для последнего вызова выражения
Представляет набор данных, полученныйх в результате запроса к базе данных.
close - закрывает набор данных
data_seek - передвигает внутренний указатель результата
fetch_array - получает ряд из набора данных в виде ассоциативного массива, нумерованного массива, или обоих
fetch_assoc - получает ряд из набора данных в виде ассоциативного массива
fetch_field - получает информацию о столбце из набора данных
fetch_fields - получает информацию о всех столбцах из набора данных
fetch_field_direct - получает информацию об определенном столбце
fetch_object - получает ряд из набора данных в виде объекта
fetch_row - получает ряд из набора данных в виде нумерованного массива
field_seek - установить указатель на результат смещенным на определенное количество полей
free_result - освобождает память, занимаемую результатом запроса
current_field - возвращает смещение текущего указателя
field_count - возвращает количество полей в наборе данных
lengths - возвращает массив значений длины столбцов
num_rows - возвращает количество рядов в наборе данных
type - возвращает MYSQLI_STORE_RESULT или MYSQLI_USE_RESULT
Имя | Описание |
---|---|
MYSQLI_READ_DEFAULT_GROUP (integer) | Читать опции из указанной группы в файле `my.cnf' или файле указанном с помощью MYSQLI_READ_DEFAULT_FILE |
MYSQLI_READ_DEFAULT_FILE (integer) | Читать опции из указанного файла вместо my.cnf |
MYSQLI_OPT_CONNECT_TIMEOUT (integer) | Тайм-аут подключения в секундах. |
MYSQLI_OPT_LOCAL_INFILE (integer) | Включает команду LOAD LOCAL INFILE. |
MYSQLI_INIT_COMMAND (integer) | Команда, которая будет выполнена при подключении к серверу MySQL. Эта команда будет повторно вызвана при переподключении. |
MYSQLI_CLIENT_SSL (integer) | Использовать SSL (шифрованый протокол). Эта опция не может быть уставовлена приложениями; она устанавливается внутри библиотеки клиента MySQL. |
MYSQLI_CLIENT_COMPRESS (integer) | Использовать компрессию. |
MYSQLI_CLIENT_INTERACTIVE (integer) | Ждать interactive_timeout секунд (вместо wait_timeout) бездействия перед закрытием соединения. Переменная сессии клиента wait_timeout будет установлена в значение переменной сессии interactive_timeout. |
MYSQLI_CLIENT_IGNORE_SPACE (integer) | Разрешить пробелы после имен функций. Делает все имена функций зарезервированными словами. |
MYSQLI_CLIENT_NO_SCHEMA (integer) | Запретить синтаксис db_name.tbl_name.col_name. |
MYSQLI_CLIENT_MULTI_QUERIES (integer) | |
MYSQLI_STORE_RESULT (integer) | Для использования буферизации наборов данных. |
MYSQLI_USE_RESULT (integer) | Для использования небуферизированных наборов данных. |
MYSQLI_ASSOC (integer) | Результат возвращается в виде ассоциативного массива с именами полей в качестве индексов. |
MYSQLI_NUM (integer) | Результат возвращается в виде индексного массива. |
MYSQLI_BOTH (integer) | Результат возвращается в виде массива, который содержит как числовой, так ассоциативный (с именами полей) индексы. |
MYSQLI_NOT_NULL_FLAG (integer) | Информирует о том, что поле определено как NOT NULL. |
MYSQLI_PRI_KEY_FLAG (integer) | Поле является частью первичного индекса. |
MYSQLI_UNIQUE_KEY_FLAG (integer) | Поле является частью уникального индекса. |
MYSQLI_MULTIPLE_KEY_FLAG (integer) | Поле является частью индекса. |
MYSQLI_BLOB_FLAG (integer) | Поле определено как BLOB. |
MYSQLI_UNSIGNED_FLAG (integer) | Поле определено как UNSIGNED. |
MYSQLI_ZEROFILL_FLAG (integer) | Поле определено как ZEROFILL. |
MYSQLI_AUTO_INCREMENT_FLAG (integer) | Поле определено как AUTO_INCREMENT. |
MYSQLI_TIMESTAMP_FLAG (integer) | Поле определено как TIMESTAMP. |
MYSQLI_SET_FLAG (integer) | Поле определено как SET. |
MYSQLI_NUM_FLAG (integer) | Поле определено как NUMERIC. |
MYSQLI_PART_KEY_FLAG (integer) | Поле является честью мультииндекса. |
MYSQLI_GROUP_FLAG (integer) | Поле является частью GROUP BY. |
MYSQLI_TYPE_DECIMAL (integer) | Поле определено как DECIMAL. |
MYSQLI_TYPE_NEWDECIMAL (integer) | Математическая точность полей DECIMAL или NUMERIC (MySQL 5.0.3 и выше). |
MYSQLI_TYPE_BIT (integer) | Поле определено как BIT (MySQL 5.0.3 и выше). |
MYSQLI_TYPE_TINY (integer) | Поле определено как TINYINT. |
MYSQLI_TYPE_SHORT (integer) | Поле определено как INT. |
MYSQLI_TYPE_LONG (integer) | Поле определено как INT. |
MYSQLI_TYPE_FLOAT (integer) | Поле определено как FLOAT. |
MYSQLI_TYPE_DOUBLE (integer) | Поле определено как DOUBLE. |
MYSQLI_TYPE_NULL (integer) | Поле определено как DEFAULT NULL. |
MYSQLI_TYPE_TIMESTAMP (integer) | Поле определено как TIMESTAMP. |
MYSQLI_TYPE_LONGLONG (integer) | Поле определено как BIGINT. |
MYSQLI_TYPE_INT24 (integer) | Поле определено как MEDIUMINT. |
MYSQLI_TYPE_DATE (integer) | Поле определено как DATE. |
MYSQLI_TYPE_TIME (integer) | Поле определено как TIME. |
MYSQLI_TYPE_DATETIME (integer) | Поле определено как DATETIME. |
MYSQLI_TYPE_YEAR (integer) | Поле определено как YEAR. |
MYSQLI_TYPE_NEWDATE (integer) | Поле определено как DATE. |
MYSQLI_TYPE_ENUM (integer) | Поле определено как ENUM. |
MYSQLI_TYPE_SET (integer) | Поле определено как SET. |
MYSQLI_TYPE_TINY_BLOB (integer) | Поле определено как TINYBLOB. |
MYSQLI_TYPE_MEDIUM_BLOB (integer) | Поле определено как MEDIUMBLOB. |
MYSQLI_TYPE_LONG_BLOB (integer) | Поле определено как LONGBLOB. |
MYSQLI_TYPE_BLOB (integer) | Поле определено как BLOB. |
MYSQLI_TYPE_VAR_STRING (integer) | Поле определено как VARCHAR. |
MYSQLI_TYPE_STRING (integer) | Поле определено как CHAR. |
MYSQLI_TYPE_GEOMETRY (integer) | Поле определено как GEOMETRY. |
MYSQLI_NEED_DATA (integer) | Имеются еще данные, доступные для связанных переменных. |
MYSQLI_NO_DATA (integer) | Больше нет доступных данных для связанных переменных. |
MYSQLI_DATA_TRUNCATED (integer) | Произошло урезание данных. Доступно начиная с PHP 5.1.0 и MySQL 5.0.5. |
Все примеры, приведенные в документации к MySQLI используют базу данных world от MySQL AB. Базу данных world вы можете найти по адресу» http://dev.mysql.com/get/Downloads/Manual/world.sql.gz/from/pick