PHP Conference Nagoya 2025

ibase_connect

(PHP 5, PHP 7 < 7.4.0)

ibase_connectОткрывает соединение с базой данных

Описание

ibase_connect(
    string $database = ?,
    string $username = ?,
    string $password = ?,
    string $charset = ?,
    int $buffers = ?,
    int $dialect = ?,
    string $role = ?,
    int $sync = ?
): resource

Устанавливает соединение с сервером Firebird/InterBase.

В случае повторного вызова ibase_connect() с теми же аргументами новая ссылка не будет установлена, вместо этого будет возвращён идентификатор уже открытой ссылки. Ссылка на сервер будет закрыта, как только завершится выполнение скрипта, если только она не была закрыта ранее явным вызовом ibase_close().

Список параметров

database

Аргумент database должен быть корректным путём к файлу базы данных на сервере, на котором он находится. Если сервер не является локальным, перед ним должно стоять префикс 'hostname:' (TCP / IP), 'hostname/port:' (TCP/IP с сервером interbase на настраиваемом порту TCP), '//hostname/' (NetBEUI), в зависимости от используемого протокола соединения.

username

Имя пользователя. Может быть установлено с помощью директивы ibase.default_user php.ini.

password

Пароль для username. Может быть установлен с помощью директивы ibase.default_password php.ini.

charset

charset является набором символов по умолчанию для базы данных.

buffers

buffers - это количество буферов базы данных, выделяемых для кеша на стороне сервера. Если 0 или не указано, сервер выбирает свой собственный по умолчанию.

dialect

dialect выбирает диалект SQL по умолчанию для любого оператора, выполняемого в соединении, по умолчанию он соответствует максимальному из поддерживаемых клиентских библиотек.

role

Функционально только с InterBase 5 и выше.

sync

Возвращаемые значения

Возвращает идентификатор ссылки Firebird/InterBase в случае успешного выполнения или false в случае возникновения ошибки.

Ошибки

Если вы получите какую-то ошибку, например "arithmetic exception, numeric overflow, or string truncation. Cannot transliterate character between character sets" (происходит, когда вы пытаетесь использовать некоторые символы с ударениями), при использовании этого и после ibase_query() вы должны установить набор символов (например, ISO8859_1 или ваш текущий набор символов).

Примеры

Пример #1 Пример использования ibase_connect()

<?php
$host
= 'localhost:/path/to/your.gdb';

$dbh = ibase_connect($host, $username, $password);
$stmt = 'SELECT * FROM tblname';
$sth = ibase_query($dbh, $stmt);
while (
$row = ibase_fetch_object($sth)) {
echo
$row->email, "\n";
}
ibase_free_result($sth);
ibase_close($dbh);
?>

Смотрите также

  • ibase_pconnect() - Открывает постоянное соединение с базой данных InterBase
  • ibase_close() - Закрывает соединение с базой данных InterBase

Добавить

Примечания пользователей

Пользователи ещё не добавляли примечания для страницы
To Top