Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: try catch не работает
Форумы портала PHP.SU » PHP » Программирование на PHP » try catch не работает

Страниц (1): [1]
 

1. Edwvee - 13 Августа, 2014 - 12:00:30 - перейти к сообщению
Есть код:
PHP:
скопировать код в буфер обмена
  1. try
  2. {
  3.         $data[$key] = iconv("WINDOWS-1251", "UTF-8", $data[$key]);
  4. }
  5. catch (Exception $e)
  6. {
  7.          foo($e);      
  8. }

Вроде бы в try все заключено, но на определенных кривых данных все равно валится:
iconv(): Detected an illegal character in input string


Что делать, чтоб не валилось и спокойно обрабатывалось?
2. Мелкий - 13 Августа, 2014 - 12:04:57 - перейти к сообщению
iconv слишком стар для исключений - он их не выбрасывает, используя вместо них куда более древний механизм ошибок.
Повесьте в set_error_handler функцию, которая будет все ошибки в исключения конвертировать.

 

Powered by ExBB FM 1.0 RC1