Автор Тема: Ммм...Кто смжет обьяснить глупому..:)  (Прочитано 1986 раз)

0 Пользователей и 1 Гость просматривают эту тему.

  • Гость
Ммм...Кто смжет обьяснить глупому..:)
« : 27 Октября 2001, 11:25:59 »
Что ет такое и что оно делает.. ? :))

------
$SIG{__WARN__}
------

Взято ет из Yabb...хочется узнать бы об етом побольше...

Оффлайн Green Kakadu

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 2757
  • +1/-0
  • 0
    • Просмотр профиля
    • http://gnezdo.webscript.ru
%SIG - спец. хэш обработчиков
« Ответ #1 : 28 Октября 2001, 14:49:12 »
$SIG{__WARN__} = sub { &fatal_error( @_ ); };

;) все, кранты серверу!

А если серьзно, то вышеприведенная строка означает, что вывод всех предупреждений об ошибках будет обрабатываться подпрограммой &fatal_error();  т.е. так ,как хочет того разработчик скрипта, а не делает Perl самостоятельно :) довольно цивилизованный способ.
А вот так:
$SIG{__WARN__} = sub {};

Можно отключить вывод предупреждений вообще (т.е. накроется скрипт и никому об этом не скажет)
 в исканиях.

  • Гость
Ммм...Кто смжет обьяснить глупому..:)
« Ответ #2 : 28 Октября 2001, 23:49:16 »
хм...а разве не через =~ ведь делается изменение над ошибкой...
А хотя ошибка присваевается переменной @_...хм..ну дя..:)))

А чего еще есть у %SIG...:)))

Оффлайн Green Kakadu

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 2757
  • +1/-0
  • 0
    • Просмотр профиля
    • http://gnezdo.webscript.ru
Ммм...Кто смжет обьяснить глупому..:)
« Ответ #3 : 29 Октября 2001, 00:07:22 »
Цитировать
ведь делается изменение над ошибкой...

не совсем, делается не изменение над ошибкой - меняется один обработчик вывода ошибок на другой.
 в исканиях.

  • Гость
Ммм...Кто смжет обьяснить глупому..:)
« Ответ #4 : 29 Октября 2001, 09:04:23 »
черт зарегится чтоль..:)
но ведь мона было обработать ошибку...например грепнуть или сделать отбор..тогда мы поставили бы =~ дык почему ща низя..представим что &fatal_error ет что-то типа грепа и вперед..:)

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28