*   >> Чтение Образование Статьи >> science >> programming

Основы исключения в Php

<р> Введение Это часть 1 из моей серии, обработки исключений в PHP. В этой части серии мы рассмотрим основы исключений в PHP. Вы должны базовые знания в PHP и PHP объектно-ориентированного программирования для того, чтобы понять эту серию. Если у вас нет знания в любой из этих областей, то из этого блога, читать ряд, первая часть под названием "Начало работы с PHP" и еще чьи Первая часть под названием "Основы объектно-ориентированного программирования в PHP". Для достижения любой из серии, просто введите название и мое имя Chrys в поле поиска на этой странице и нажмите Поиск.

Примечание: Если вы не видите код или, если вы думаете, что-то отсутствует (неработающую ссылку, изображение отсутствует), просто свяжитесь со мной в [email protected]. То есть, свяжитесь со мной для малейшей проблемы у вас есть о том, что вы читаете. Ошибка Пример Рассмотрим следующий код: $ числитель = 8; $ знаменатель = 2; если ($ знаменатель = 0) {$ = $ ответ числитель /знаменатель $; эхо $ ответ; } Еще {эхо "Деление на ноль не допускается!"; }?> Этот код в основном разделяет два номера. В жизни вы не можете разделить число на ноль.

Если предположить, что знаменатель введен пользователем, то он может ввести нулевой. Разделение (процесс) нулем не должно быть позволено. Давайте посмотрим на то, что в коде: первые два утверждения инициализации целых чисел. Разделение должно происходить в IF-блока. В случае, условие проверяет, является ли знаменатель равен нулю. Если это не так, то деление происходит в IF-блока. Если это так, то еще часть если конструкт-отображает сообщение об ошибке пользователю.

Этот сегмент кода в порядке, потому что, если знаменатель равен нулю, если блок не будет выполнен и никакого разделения не состоится. С выше коде, выполнение программы продолжается после если /другое конструкции. Это, если /остальное конструкция делает разделение и предотвращает ошибки во время выполнения от принятия место. Условный блок делает разделение; If-состоянии, если бы чеки происходят ошибки; если будет происходить ошибка, еще блок отображает предупреждающее сообщение и, если блок и деление не выполняется. Основные компоненты исключение в простых терминах, исключение ошибка.

С обработкой исключений, вы должны, что называется Try /Catch конструкция; составил из попытаться поймать блоков. Попробовать блок имеет важную выражение, которое является, бросить. бросок принимает новый объект под названием Исключение объекта. Объект Исключение является предопределенный объект, который поможет вам обрабатывать исключения. В приведенном выше если /другое построить, сегмент кода интерес, который является сегментом требуется, если это блок-. Этот блок, если это то, что-ли разделение.

С обработкой исключений, что сегмент кода интерес переходит в примерке блока; сообщение об ошибке сегмент кода или ошибка сегмент кода обработчика переходит в сточный-блока. Выражение бросок в примерке блока называет поймать-блок, проходящий новый объект исключения к нему. Загвоздка конструкция, как функции. Это основной синтаксис для обработки исключений, попробуйте {//отчетность интерес бросить новый Exception (ErrorMessage, код); } Поймать (Exception $ е) {//обработать ошибку} Аргумент для выражения броска не вдаваться в скобках.

Это новый экземпляр Исключение объект, который не нужно иметь имя. Вы можете крутить код вокруг, чтобы дать ему имя, но это все в порядке, как это выше. Параметры нового объекта исключения являются необязательными. Первый из них является сообщение об ошибке на ваш выбор вы хотите, чтобы дать пользователю программы. Второй представляет собой целое число вашего выбора, который представляет ошибку. Загвоздка-блок должен следовать непосредственно за TRY-блок в вашей печати, как в приведенном выше синтаксисе. Он получает новый объект экземпляра исключения бросили.

Параметр для блока улова, "Исключение $ е". Здесь слово, исключение, означает тип объекта, полученную, является объектом исключение. $ е переменная, которая определяет новый созданный объект исключения (полученную в сточный-блока). Предыдущая программа переписана с использованием Try /Catch построить следующим образом: $ числитель = 8; $ знаменатель = 2; попробуйте {если ($ знаменатель = 0) {$ = $ ответ числитель /$ знаменатель; эхо $ ответ; } Еще {бросить новый Exception ("Деление на ноль не допускается!"); }} Поймать (Exception $ е) {Эхо $ е-> GetMessage (); }?> Прочитайте и попробуйте выше программы.

Измените значение $ знаменателю нулю и попробовать программу снова. Помните, что для броска операнда выше, два аргумента функции конструктора класса Exception в необязательны. В этом коде, только сообщение об ошибке по выбору программиста было дано. Если программист не дает этот аргумент, сообщение об ошибке по умолчанию "неизвестное исключение" будет проходить по новой конкретизированной объекта исключения. Загвоздка блок ловит брошенный объект исключения, как параметра (аргумента), $ E.

Класс Исключение имеет метод, который бы прочитать сообщение об ошибке вы ввели во время экземпляра нового объекта исключения. Название метода, GetMessage. Загвоздка блок выше просто повторяет сообщение. Прочитайте выше код еще раз. Во многих случаях, попытка блок эквивалентно имеет IF-состояние которого блок будет выполняться, если условие не обнаружит ошибку. Если условие обнаруживает ошибку, ПЧ-блок не будет выполнять, а еще часть будет бросать исключение; то есть, еще часть будет вызывать поймать-блок отправки аргумент (экземпляр объекта исключения) выражения броска, к нему.

Блок улов использует аргумент, чтобы отобразить соответствующее сообщение об ошибке (печатается в течение экземпляра) для пользователя. Это то, что происходит во многих случаях. Ошибки не обрабатываются, как правило, в истинном смысле этого слова; Обычно сообщение об ошибке посылается пользователю, ПЧ-построить в блока проверки предотвращает ошибку от действительно происходит. После этой казни, программа продолжает последовательно от Try /Catch конструкции; и нет прекращения программы, даже если обнаружена ошибка.

Бросьте выражение в функции Вы можете поставить то, что вам нужно для ложного блока в функции, как показано ниже: $ числитель = 8; $ знаменатель = 2; функционировать errFn () {если {$ ответ = $ числитель /знаменатель $ ($ знаменатель = 0!); эхо $ ответ; } Еще {бросить новый Exception ("Деление на ноль не допускается!"); }} {Попробовать errFn (); } Поймать (Exception $ е) {Эхо $ е-> GetMessage (); }?>

Page   <<       [1] [2] [3] [4] >>
Copyright © 2008 - 2016 Чтение Образование Статьи,https://ru.nmjjxx.com All rights reserved.