Новые книги

 Второе издание популярного справочника полностью переработано и расширено с целью предоставить читателю наиболее полное описание средств разработки, конфигурирования, использования и обслуживания сетей TCP/IP и соответствующих служб.

Книга написана увлекательно и доступно. Она содержит дополнительные материалы о нескольких протоколах Интернета, используемых серверами и браузерами WWW, а также рассматривает все последние изменения в этой области. В книгу включены главы о новом стандарте безопасности IP и протоколе IP следующего поколения, известном как IPng или IPv6. Рисунки и таблицы наглядно показывают влияние средств безопасности IP и IPng на существующие сетевые среды.

Издание содержит следующие дополнительные разделы:

• Безопасность IP и IPv6

• Описание средств WWW, новостей Интернета и приложений для работы с gopher

• Подробное описание серверов имен доменов (DNS), маски подсети и бесклассовой маршрутизации в Интернете

• Таблицы и протоколы маршрутизации

• Руководство по реализации средств безопасности для каждого из протоколов и приложений

• Примеры диалогов с новыми графическими инструментами

Новое издание бестселлера по TCP/IP станет незаменимым помощником для разработчиков сетей и приложений, для сетевых администраторов и конечных пользователей.
Хотите поднять продажи на десятки процентов за неделю-две? Да ещё и без затрат? Это возможно – если использовать экспресс-маркетинг.

Приемы, которые предлагает вам Александр Левитас – пожалуй, лучший в России эксперт по партизанскому (малобюджетному) маркетингу – уже принесли сотни миллионов его ученикам и клиентам. Давайте посмотрим, сколько денег они принесут вам.

В книге собраны 120 самых простых и эффективных способов повысить продажи и увеличить прибыль компании (а значит, и ваш доход). Применяйте их один за другим – и следите за ростом продаж.

assert

Учебник РНР
Назад Вперёд

assert

(PHP 4)

assert - проверяет, не является утверждение/assertion ложным (FALSE).

Описание

int assert (string|bool assertion)

assert() проверяет данное утверждение assertion и выполняет определённую акцию, если результат FALSE.

Если assertion задано как строка, оно будет вычислено функцией assert() как РНР-код. Преимуществом строковых assertion является меньшая нагрузка при неудаче утверждения, когда проверка утверждения отключена.

Утверждения должны использоваться только для целей отладки. Вы можете использовать их для проверки условий, которые всегда должны быть TRUE и которые указывают на некоторые ошибки программы, если не TRUE, или для проверки существования определённых возможностей вроде функций расширения или определённых ограничений и возможностей системы.

Утверждения не должны использоваться для нормальных операций прогона программы вроде проверки параметров ввода. Основным правилом будет: ваш код всегда должен иметь возможность работать корректно, если проверка утверждения не активирована.

Поведение assert() может конфигурироваться функцией assert_options() или .ini-установками, описанными на странице об этой функции в данном учебнике.

функция assert_options() и/или директива конфигурации ASSERT_CALLBACK позволяют установить callback-функцию для обработки неудавшихся утверждений.

Обратные вызовы/callbacks assert() обычно используются для построения утилит автоматической проверки, поскольку они позволяют легко захватить код, передаваемый в утверждение вместе с информацией о том, где утверждение было сделано. Хотя эта информация может быть захвачена другими методами, использование утверждений позволяет делать это намного быстрее и легче!

Сallback-функция должна принимать три аргумента. Первый аргумент будет содержать файл, в котором утверждение не удалось. Второй аргумент будет содержать строку, в которой утверждение потерпело неудачу, а третий аргумент будет содержать выражение, которое не удалось выполнить (если имеются - такие литеральные значения как 1 или "two" не будут передаваться через этот аргумент).

Пример 1. Обработка неудавшегося утверждения специальным обработчиком
<?php
// Активизирует утверждение и делает его тихим/quiet
assert_options (ASSERT_ACTIVE, 1);
assert_options (ASSERT_WARNING, 0);
assert_options (ASSERT_QUIET_EVAL, 1);

// Создаётся функция-обработчик
function my_assert_handler ($file, $line, $code) {
    echo "<hr>Assertion Failed:
        File '$file'<br>
        Line '$line'<br>
        Code '$code'<br><hr>";
}

// Устанавливается callback/обратный вызов
assert_options (ASSERT_CALLBACK, 'my_assert_handler');

// Делается утверждение, которое должно потерпеть неудачу
assert ('mysql_query ("")');
?>

Назад Оглавление Вперёд
assert_options Вверх dl