как юзать catch all ?

nl2br

Новичок
как юзать catch all ?

В PHP4 не было обработки исключений. В PHP5 реализована обработка исключений, подобно другим языкам программирования. Обратите внимание на поддержку инструкций "catch all" и "finally".
Где можно найти синтаксис блока try ... catch all ?
 

tony2001

TeaM PHPClub
оригинальная версия (кто переводил?):
The Zend Engine 1.0 had no exception handling. The Zend Engine 2.0
introduces a exception model similar to that of other programming
languages. But there is no catch all and no finally clause.
(c) Zend/ZEND_CHANGES

"catch all" реализована по другому принципу: все эксепшены должны быть наследованы от класса Exception, соотв-но, "catch (Exception $exc)" отработает в любом случае.
 

fixxxer

К.О.
Партнер клуба
Хы, пробовал помню в бете то ли 2 то ли 3 канало... позднее не интересовался... будем знать. Это в общем то правильно конечно.
 

nl2br

Новичок
tony2001
в том месте где не отрабатывается, выдаёт ошибку типа:Notice: Undefined index: Rasdas in c:\program files\apache group\Apache\htdocs\index.php on line 100
 

fixxxer

К.О.
Партнер клуба
Дык... Я переводил. Год назад. Устарело все давно. И код местами кривой - копипейст с зенда, где он раньше был тоже кривой :D

Млин, давно надо обновить, руки никак не дойдут.
 

tony2001

TeaM PHPClub
fixxxer
12 Feb 2004, PHP 5 Beta 4
- Changed exceptions so that they must now inherit from the built-in Exception
class. This allows for a general catch(Exception $e) statement to catch all
exceptions. (Andi, Zeev)
...
nl2br
и?
а как до catch() выполнение по-твоему должно дойти?
или ты думал, что вместо Notice должен быть эксепшен?
 

nl2br

Новичок
tony2001,
всё понял, да я думал, что так.
Спасибо.
Вопросов больше не имею.
 

Profic

just Profic (PHP5 BetaTeam)
[off]
Может все-же куда-нить выложить мой перевод про изменения в ZE2? Благо оригинал брался из мануала и проверялся каждый код, который лепился в качестве примеров на релизе php5.
ЗЫ. Правда там только касательно ООП.
[/off]
 
Сверху