px_create_fp

(PECL paradox >= 1.0.0)

px_create_fpСоздать новую базу данных paradox

Описание

px_create_fp ( resource $pxdoc , resource $file , array $fielddesc ) : bool

Создать новый файл базы данных paradox. Перед вызовом данной функции фактический файл нужно открыть с помощью fopen(). Убедитесь, что этот файл доступен для записи.

Замечание:

Вызов этих функций вызывает предупреждение о пустом имени таблицы, которое можно безопасно игнорировать. Просто установите tablename после этого вызова с помощью px_set_parameter().

Замечание:

Эта функция очень экспериментальна из-за недостаточной документации формата файла paradox. Файлы базы данных, созданные с помощью данной функции, могут быть открыты с помощью px_open_fp(), а также могут быть открыты программным обеспечением Paradox, но ваш сценарий использования может отличаться.

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

pxdoc

Идентификатор ресурса базы данных paradox, возвращаемый функцией px_new().

file

Дескриптор файла, возвращаемый функцией fopen().

fielddesc

fielddesc - это массив, содержащий один элемент для каждой спецификации поля. Спецификация поля - это массив с двумя или тремя элементами. Первый элемент всегда строковое значение, используемое как имя поля. Он не может быть длиной более десяти символов. Второй элемент содержит тип поля, который является одной из констант, перечисленных в таблице Константы типов полей. В случае поля символа или поля bcd вам нужно будет предоставить третий элемент, определяющий длину, соответственно, точности поля. Если спецификация поля содержит поля blob, вам нужно будет либо сделать поле достаточно большим для всех значений полей, либо указать blob-файл с помощью px_set_blob_file() для хранения blob-файлов. Если это не сделано, данные поля обрезаются.

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

Возвращает true в случае успешного завершения или false в случае возникновения ошибки.

Примеры

Пример #1 Создание базы данных Paradox с помощью двух полей

<?php
if(!$pxdoc px_new()) {
  
/* Обработка ошибки */
}
$fp fopen("test.db""w+");
$fields = array(array("col1""S"), array("col2""I"));
if(!
px_create_fp($pxdoc$fp$fields)) {
  
/* Обработка ошибки */
}
px_set_parameter($pxdoc"tablename""testtable");
for(
$i=-50$i<50$i++) {
  
$rec = array($i, -$i);
  
px_put_record($pxdoc$rec);
}   
px_close($pxdoc);
px_delete($pxdoc);
fclose($fp);
?>

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

  • px_new() - Создать новый объект paradox
  • px_put_record() - Сохраняет запись в базе данных paradox
  • fopen() - Открывает файл или URL