Текущие пополнения в FAQ

Andreika

"PHP for nubies" reader
Popoff
вопрос "Использовать ли собаку?" философско-синтетический.. примерно также как и "сколько звезд на небе?". Ну раз хочется на него ответить - бог в помощь )

рискуя испортить зрение все ж прочитал заготовку - очень уж цитаты автором себя любимого, да еще и из "вышенаписанного" заинтересовали.
>его исключили бы из языка.
дык осталось твою статью перевести на английский и разрабочкикам.. уберут сразу же

в общем при прочтении на каждом втором предложении появлясь мысль, начинающаяся с "фигня какая...", "автор забыл написать имхо..", "спорно...", "это уже было написано выше...", но когда пошли обрывающиеся предложения и странный код решил не заострять на этом внимание - всеж это не финальная версия... кста, ответ на "почему так много" можно не писать - текст можно сократить вчетверо, не потеряв оттуда ни одной мысли )

==========
небольшие комменты самому к тексту :

Собака может применяться только тогда, когда программист предусмотрел собственные средства обработки сообщений об ошибке ... можно порекомендовать set_error_handler()
вот как раз в этом случае @ очень бы помогла, но к сожалению бесполезна - ошибка в обработчик попадет в любом случае :(
---
Написано в статье много интересного, но к сожалению непонятно о ком.. да и вопросов на форуме по поводу собаки не припомню, поэтому бум думать логически

зачем нужна @ ? - чтобы подавить сообщение об ошибке
когда надо его подавить?
1. когда я пишу код, который считаю правильным, в отличие от интерпритатора, выдающего мне нотисы
PHP:
$id = intval($_REQUEST['id']);
- абсолютно правильный код, всегда возвращающий мне то, что нужно.. какой такой нотис-шмотис, ничего не знаю, пишу
PHP:
$id = @intval($_REQUEST['id']);
и вперед
2. когда код временами выдает мне какое-то непонятное сообщение
PHP:
$res = mysql_query("SELECT * FROM t WHERE a=$id");
while ($r = mysql_fetch_assoc($res)) { /* .... */ }
все выдает и выдает про какой-то непонятный MySQL result resource... не знаю я никакого MySQL result resource... пишу
PHP:
$res = mysql_query("SELECT * FROM t WHERE a=$id");
while ($r = @mysql_fetch_assoc($res)) { /* .... */ }
и радуюсь отсутствию ошибок )

и там и там я поставил @ вполне сознательно.. в первом случае заранее зная как оно будет, во втором случае попадая на эту ошибку я намеренно от нее "избавляюсь"...

я видел код, вызывающий ошибку! я думал над ним! я пытался его исправить! получилось в меру способностей... я сделал все от меня зависящее.. и вообще - я не понимаю принципов отладки скриптов.. я отключил сообщение об этой ошибке! если мне ЭТО каждый час будет сваливаться на мыло мне легче от этого станет? сомневаюсь...
шанс, что я "убъю" какую то другую ошибку в этом коде (а код обычно маленький по размеру) есть, но маленький... но есть %)

а у тебя получается статья для некоего абстрактного программера, у которого каждая строчка кода начинается с @ - он действительно не узнает о ошибках в скрипте.. или они существуют?

ЗЫ. а покажи пожалуйста код, используемый тобой в обработчике ошибок для записи ошибки в лог и вывода ее на экран если надо
 

Гравицапа

elbirret elcno
Автор оригинала: Popoff
Гравицапа
Я уже начал. Большую часть я уже сделал, но у меня резко кончилось время. Если хочешь, пришлю тебе то, что я сделал.

-~{}~ 27.04.06 17:53:

Наброски сырого, требующего ещё большого внимания текста, можно скачать здесь:
http://download.popoff.donetsk.ua/tmp/index.zip

В целом, я мог бы к концу мая этот текст доделать и сам...
Сначала не понял, что ты начал...потому как ты в посте не указал...
Ну ты бы хоть сюда что ли отписался...перед тем как начать...

http://phpclub.ru/faq/wakka.php?wakka=ErrorControl&v=ump

Всё конечно обсуждаемо...

-~{}~ 23.07.06 22:45:

Взялся за Passing variable by value, by reference. (Передача параметров по ссылке и значению).
 
Сверху