KnigaRead.com/

White cat - Справочник по PHP

На нашем сайте KnigaRead.com Вы можете абсолютно бесплатно читать книгу онлайн white cat, "Справочник по PHP" бесплатно, без регистрации.
Перейти на страницу:

$name=mysql_field_name($result,$i);

$len=mysql_field_len($result,$i);

$flags=mysql_field_flags($result,$i);

echo $type." ".$name." ".$len." ".$flags."<BR>";

$i++;

}



mysql_field_flags


Эта функция возвращает флаги, которые были использованы при создании указанного поля в таблице.

Синтаксис:

string mysql_field_flags(int result, int field_offset)

Возвращаемая строка представляет собой набор слов, разделенных пробелами, так что вы можете преобразовать ее в массив при помощи функции explode():

$Flags=explode(" ",mysql_field_flags($r,$field_offset));


Поля записей в MySQL могут иметь следующие свойства-флаги:


mysql_list_fields


Возвращает список полей таблицы.

Синтаксис:

int mysql_list_fields(string dbname, string tblname [,int link_identifier])

Функция mysql_list_fields() возвращает информацию об указанной таблице tblname в базе данных bdname, используя идентификатор соединения link_identifier, если он задан (в противном случае - последнее открытое соединение). Возвращаемое значение - идентификатор результата, который может быть проанализирован обычными средствами. В случае ошибки возвращается -1, текст сообщения ошибки может быть получен обычным способом.

$link=mysql_connect($host,$user,$pass);

$fields=mysql_list_fields("db1", "table", $link);

$colums=mysql_num_fields($fields); // число полей в таблице

// Далее распечатаем имена всех полей таблицы

for($i=0;$i<$colums;$i++) {

echo mysql_field_name($fields,$i)."<BR>";

}



mysql_num_fields


Эта функция возвращает число полей в одной строке результата, т.е. число колонок в результате.

Синтаксис:

int mysql_num_fields(int result)

В силу сказанного, функция позволяет определить горизонтальную размерность "двумерного массива результата".


mysql_errno


Возвращает номер последней ошибки.

Синтаксис:

int mysql_errno ([int link_identifier])

Данная функция возвращает номер последней зарегистрированной ошибки или 0, если ошибок нет.

Идентификатор link_identifier можно не указывать, если за время работы сценария было установлено только одно соединение.

mysql_connect("dbname");

echo mysql_errno().": ".mysql_error()."<BR>";



mysql_error


Возвращает сообщение об ошибке.

Синтаксис:

string mysql_error ([int link_identifier])

Эта функция возвращает строку, содержащую текст сообщения об ошибке или пустую строку, если ошибок небыло.

mysql_connect("dbname");

echo mysql_errno().": ".mysql_error()."<BR>";


Графика

Работа с изображениями и библиотека GD


Применение и установка


Здесь мы рассмотрим идею создания рисунков сценарием "на лету". Это очень может пригодиться при создании сценариев-счетчиков, графиков, картинок-заголовков, да и многого другого.

Для деятельности такого рода существует специальная библиотека под названием GD. Она содержит в себе множество функций (такие как рисование линий, растяжение/сжатие изображения, заливка до границы, вывод текста и т.д.), которые могут использовать программы, поддерживающие работу с данной библиотекой.

Поддержка GD включается при компиляции и установке PHP. Возможно, некоторые хостинг-провайдеры ее не имеют.

Для подключения модуля на вашем локальном диске нужно открыть в Блокноте файл php.ini из каталога с файлами Windows (обычно C:Windows)

Затем:1. Настройте следующий параметр:extension_dir=C:Program FilesPHP4extensions

Здесь мы уведомляем PHP, что модули он должен искать в каталоге C:Program FilesPHP4extensions.

2. Найдите закомментированную строку ;extension=php_gd.dll

и разкомментируйте ее, т.е. уберите ; в начале.

3. Сохраните изменения в файле php.ini


imageTypes


Определение графических форматов, поддерживаемых PHP.

Синтаксис:

int imageTypes(void)

Функция возвращает битовую маску графических форматов, которые поддерживает данная версия библиотеки GD: IMG_GIF | IMG_JPG | IMG_PNG | IMG_WBMP

<?php

if(imageTypes() && IMG_PNG) echo "формат PNG поддерживается";

?>


GetImageSize


Определение размеров рисунка.

Синтаксис:

array GetImageSize(string filename [,array imageinfo])

Эта функция предназначена для быстрого определения в сценарии размеров (в пикселях) и формата рисунка, имя файла которого передано ей в первом параметре. Она возвращает список из четырех элементов. Первый элемент (с ключем 0) хранит ширину картинки в пикселях, второй (с ключем 1) - его высоту. Ячейка массива с ключем 2 определяется форматом изображения: 1, если это GIF, 2 в случае JPG, 3 для PNG и 4 - SWF. Следующий элемент, имеющий ключ 3, будет содержать после вызова функции строку примерно следующего вида: height=sx width=sy, где sx и sy - соответственно ширина и высота изображения. Это применение задумывалось для того, чтобы облегчить вставку данных о размере изображения в тег <img>, который может быть сгенерирован сценарием:

<?php

$size_img=GetImageSize("img/image.jpg");

echo "<IMG src='img/image.jpg' $size_img>";

?>

Если при обращении к функции был указан второй необязательный массив imageinfo, в него можно записать дополнительную информацию о файле. Это могут быть, например, различные маркеры JPG APP (внедренная информация).Функция iptcparse() позволяет конвертировать эти данные в читаемый вид:

<?php

$size_img=GetImageSize("img/image.jpg", &$info_arr);

if(isset($info_Arr["APP13"])) {

$iptc = iptcparse($info_arr["APP13"]);

var_dump($iptc);

};

?>

Данная функция не требует наличия библиотеки GD.


imageSX


Определение ширины рисунка.

Синтаксис:

int imageSX(int im)

Функция возвращает горизонтальный размер изображения, заданного своим идентификатором im, в пикселях.


imageSY


Определение высоты рисунка.

Синтаксис:

int imageSY(int im)

Функция возвращает вертикальный размер изображения, заданного своим идентификатором im, в пикселях.


read_exif_data


Чтение заголовков EXIF из файла JPEG.

Синтаксис:

array read_exif_data(string filename)

Параметр filename не может быть URL.

Функция возвращает ассоциативный массив, в котором индексами являются имена заголовков EXIF.

Заголовки EXIF обычно хранят информацию цифровых камер (в различном виде).

<?php

$exif = read_exif_data("img/file.jpg");

print_r($exif);

?>

Данный пример выведет что-то наподобие:

Array( [FileName] => file.jpg [FileDateTime] => 1064566998 [FileSize] => 31646 [CameraMake] => Eastman Kodak Company [CameraModel] => KODAK DC265 ZOOM DIGITAL CAMERA (V01.00) [DateTime] => 2002:08:31 02:12:45 [Height] => 454 [Width] => 620 [IsColor] => 1 [FlashUsed] => 0 [FocalLength] => 8.0mm [RawFocalLength] => 8 [ExposureTime] => 0.004 s (1/250) [RawExposureTime] => 0.0040000001899898 [ApertureFNumber] => f/ 9.5 [RawApertureFNumber] => 9.5100002288818 [FocusDistance] => 16.66m [RawFocusDistance] => 16.659999847412 [Orientation] => 1 [ExifVersion] => 0200)

Данная функция доступна, если подключена библиотека EXIF.

Для этого необходимо либо снять комментарий со строки ;extension=php_exif.dll в файле php.ini (должно быть extension=php_exif.dll), либо откомпилировать PHP с параметром --enable-exif.

Для работы этой функции библиотека GD не требуется.


imageInterlace


Установка черезстрочности.

Синтаксис:

int imageInterlace(int im [, int interlace])

Если в функции задан второй необязательный параметр interlace, и он равен 1, то рисунок im отображается черезстрочно, если равен 0, то последовательно.

Функция возвращает текущую установку черезстрочности.


gd_info


Возвращает информацию о библиотеке GD.

Синтаксис:

array gd_info(void)

Функция возвращает массив, содержащий версию и параметры установленной библиотеки GD.

<?php

$gd=gd_info();

echo "<pre>";

print_r($gd);

echo "</pre>";

?>

Приведенный пример выведет примерно следующее:

Array( [GD Version] => bundled (2.0.22 compatible) [FreeType Support] => 1 [FreeType Linkage] => with freetype [T1Lib Support] => [GIF Read Support] => 1 [GIF Create Support] => [JPG Support] => 1 [PNG Support] => 1 [WBMP Support] => 1 [XBM Support] => 1 [JIS-mapped Japanese Font Support] => )


image_type_to_mime_type


Возвращает Mime-Type типа изображения.

Синтаксис:

string image_type_to_mime_type( int imagetype)

Функция возвращает MIME-тип картинки, заданный константой в параметре imagetype.

<?php

header("Content-type: " . image_type_to_mime_type(IMAGETYPE_PNG));

?>

Список констант и возвращаемых значений функции image_type_to_mime_type():

Данная функция не требует наличия библиотеки GD.

Параметры изображения

Перейти на страницу:
Прокомментировать
Подтвердите что вы не робот:*