White cat - Справочник по PHP
Скачивание начинается... Если скачивание не началось автоматически, пожалуйста нажмите на эту ссылку.
Жалоба
Напишите нам, и мы в срочном порядке примем меры.
Описание книги "Справочник по PHP"
Описание и краткое содержание "Справочник по PHP" читать бесплатно онлайн.
Вниманию читателей предлагается справочник по PHP.
Справочник предназначается для людей, уже освоивших азы программирования на языке PHP.
Справочник создан на основе информации, предоставленной на сайте «Справочник Web-языков» www.spravkaweb.ru.
gethostbynamel
Возвращает список IP-адресов хоста.
Синтаксис:
array gethostbynamel(string hostname);
Одному доменному имени может соответствовать сразу несколько IP-адресов, и в случае сильной загруженности серверов DNS-сервер сам выбирает, по какому IP-адресу перенаправить запрос. Он выбирает тот адрес, который использовался наиболее редко.
Функция gethostbynamel() возвращает не один, а все IP-адреса хоста с именем hostname.
Стоит заметить, что в Интернете существует множество виртуальных хостов, которые имеют различные доменные имена, но один и тот же IP-адресс. Таким образом, если следующая последовательность команд для существующего хоста с IP-адресом ip всегда печатает этот же адрес:
$host = gethostbyaddr($ip);
echo gethostbyname($host);
то аналогичная последовательность для домена с DNS-именем $host, наоборот, может напечатать не то же имя, а другое:
$ip = gethostbyname($host);
echo gethostbyaddr($ip);
getprotobyname
Производит определение номера порта, используемого протоколом.
Синтаксис:
int getprotobyname(string name);
getprotobynumber
Производит определение протокола порта.
Синтаксис:
string getprotobynumber(int number);
getservbyname
Производит определение протокола интернет-службы.
Синтаксис:
int getservbyname(string service, string protocol);
Эта функция возвращает номер порта, который использует служба service.
В аргументе protocol указывается тип протокола - TCP или UDP.
echo getservbyname("HTTP", "TCP"); // может вывести 80
getservbyport
Производит определение интернет-службы, которая использует заданный порт.
Синтаксис:
string getservbyport(int port, string protocol);
Здесь в аргументе protocol нужно указать тип протокола - TCP либо UDP.
echo getservbyport(21, "TCP"); // выведет: ftp
echo getservbyport(23, "TCP"); // выведет: telnet
checkdnsrr
Производит проверку записи DNS.
Синтаксис:
int checkdnsrr(string host [, string type]);
Эта функция отправляет запрос DNS-серверу для поиска записей, которые имеются для хоста host. Если были найдены записи типа type, то функция возвращает true. В противном случае и при ошибке - false.
Аргумент typeможет принимать значения:
Аргумент host может указываться строкой в формате IP с разделением точками, либо быть именем хоста.
getmxrr
Производит получение MX записи для интернет-хоста.
Синтаксис:
int getmxrr(string hostname, array mxhosts [, array weight]);
Функция getmxrr() инициирует поиск в базе данных DNS записи MX (почтовый сервер домена) для хоста hostname.
Если запись найдена, возвращает true, если нет - то false.
Список записей MX заносится в массив mxhosts. Если указан массив weight, он заполняется дополнительной информацией о записях.
Управляющие функции
Отслеживание и обработка ошибок
PHP имеет следующие типы ошибок и предупреждений:
Указанные значения в виде чисел или констант можно комбинировать, формируя битовую маску ошибок, о которых необходимо сообщать в ходе исполнения сценария. Для комбинирования используются битовые операторы, но в конфигурационном файле php.ini распознаются только "|", "~", "!" и "&".
В PHP 4 по умолчанию разрешены сообщения вида E_ALL & ~E_NOTICE, то есть сообщаться должно все, кроме обычных сообщений. Можно переопределить эту установку параметром файла конфигурации error_reporting() (ее также можно указывать в файлах конфигурации сервера Apache).
Если при вызове функции перед ее именем указать символ "@", то в случае возникновения ошибки в этой функции сообщение о нем выдаваться не будет.
В настоящее время оператор игнорирования ошибок блокирует даже выдачу сообщений о критических ошибках, при возникновении которых сценарий досрочно завершается.
Если разрешен параметр конфигурации track_errors, то сообщение об ошибке сохраняется в глобальной переменной $php_errormsg.
<?php
// определенный пользователем обработчик ошибок
function userErrorHandler($errno,$errmsg,$filename,$linenum,$vars) {
// время возникновения ошибки
$dt=date("Y-m-d H:i:s (T)");
$errortype = array(
1 => "Error",
2 => "Warning",
4 => "Parsing Error",
8 => "Notice",
16 => "Core Error",
32 => "Core Warning",
64 => "Compile Error",
128 => "Compile Warning",
256 => "User Error",
512 => "User Warning",
1024 => "User Notice"
);
$err.="время ($dt), номер ошибки ($errno), ";
$err.="тип ошибки (".$errortype[$errno]."): ";
$err.=""$errmsg".файл "$filename", строка (";
$err.=$linenum.")n";
$user_errors=array(E_USER_ERROR, E_USER_WARNING, E_USER_NOTICE);
if(in_array($errno, $user_errors))
// выдать сообщение для ошибок пользователя
echo $err;
// сохранить событие ошибки в системном журнале
error_log($err, 3, "/usr/local/php4/error.log");
}
// установить уровень контроля ошибок и обработчик
error_reporting(0); // не выводить сообщения PHP
$old_error_handler=set_error_handler("userErrorHAndler");
// неопределенная константа вызывает предупреждение
$t=_NOT_DEFINED_CONSTANT;
trigger_error("Моя ошибка", E_USER_ERROR);
trigger_error("Мое предупреждение", E_USER_WARNING);
?>
Введение
PHP имеет следующие типы ошибок и предупреждений:
Указанные значения в виде чисел или констант можно комбинировать, формируя битовую маску ошибок, о которых необходимо сообщать в ходе исполнения сценария. Для комбинирования используются битовые операторы, но в конфигурационном файле php.ini распознаются только "|", "~", "!" и "&".
В PHP 4 по умолчанию разрешены сообщения вида E_ALL & ~E_NOTICE, то есть сообщаться должно все, кроме обычных сообщений. Можно переопределить эту установку параметром файла конфигурации error_reporting() (ее также можно указывать в файлах конфигурации сервера Apache).
Если при вызове функции перед ее именем указать символ "@", то в случае возникновения ошибки в этой функции сообщение о нем выдаваться не будет.
В настоящее время оператор игнорирования ошибок блокирует даже выдачу сообщений о критических ошибках, при возникновении которых сценарий досрочно завершается.
Если разрешен параметр конфигурации track_errors, то сообщение об ошибке сохраняется в глобальной переменной $php_errormsg.
<?php
// определенный пользователем обработчик ошибок
function userErrorHandler($errno,$errmsg,$filename,$linenum,$vars) {
// время возникновения ошибки
$dt=date("Y-m-d H:i:s (T)");
$errortype = array(
1 => "Error",
2 => "Warning",
4 => "Parsing Error",
8 => "Notice",
16 => "Core Error",
32 => "Core Warning",
64 => "Compile Error",
128 => "Compile Warning",
256 => "User Error",
512 => "User Warning",
1024 => "User Notice"
);
$err.="время ($dt), номер ошибки ($errno), ";
$err.="тип ошибки (".$errortype[$errno]."): ";
$err.=""$errmsg".файл "$filename", строка (";
$err.=$linenum.")n";
$user_errors=array(E_USER_ERROR, E_USER_WARNING, E_USER_NOTICE);
if(in_array($errno, $user_errors))
// выдать сообщение для ошибок пользователя
echo $err;
// сохранить событие ошибки в системном журнале
error_log($err, 3, "/usr/local/php4/error.log");
}
// установить уровень контроля ошибок и обработчик
error_reporting(0); // не выводить сообщения PHP
$old_error_handler=set_error_handler("userErrorHAndler");
// неопределенная константа вызывает предупреждение
$t=_NOT_DEFINED_CONSTANT;
trigger_error("Моя ошибка", E_USER_ERROR);
trigger_error("Мое предупреждение", E_USER_WARNING);
?>
Функции обработки ошибок
error_log
Посылка сообщения об ошибке.
Синтаксис:
int error_log(string message, int message_type [, string destination [, string extra_headers]])
Сообщение, посылаемое этой функцией, может быть направлено в журнал системных сообщений web-сервера, прот TCP или в файл.
В первом аргументе message указывается само содержание сообщения. Во втором аргументе message_type - куда оно должно быть направлено.
Назначение обозначается следующими значениями:
if(!Ora_London($username, $password)) {
error_log("Сервер Oracle недоступен!", 0);
};
if(!($foo = allocate_new_foo()) {
error_log("Нельзя выделить FOO!", 1, "[email protected]");
}
// other ways of calling error_log():
error_log("У нас ошибка!", 2, "127.0.0.1:7000");
error_log("У нас ошибка!", 2, "localhost");
error_log("У нас ошибка!", 3, "/var/tmp/my-errors.log");
error_reporting
Подписывайтесь на наши страницы в социальных сетях.
Будьте в курсе последних книжных новинок, комментируйте, обсуждайте. Мы ждём Вас!
Похожие книги на "Справочник по PHP"
Книги похожие на "Справочник по PHP" читать онлайн или скачать бесплатно полные версии.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.
Отзывы о "White cat - Справочник по PHP"
Отзывы читателей о книге "Справочник по PHP", комментарии и мнения людей о произведении.