За последние 24 часа нас посетили 47758 программистов и 1729 роботов. Сейчас ищет 621 программист ...

Обработка исключений, функция $e->getMessage()

Тема в разделе "PHP для новичков", создана пользователем shurik_shink, 22 дек 2015.

  1. shurik_shink

    shurik_shink Новичок

    С нами с:
    17 май 2015
    Сообщения:
    79
    Симпатии:
    0
    Как правильно в переменную запихнуть значение функции $e->getMessage()?

    этот код работает
    Код (PHP):
    1. try{
    2. .......
    3. }
    4. catch(Exception $e){ 
    5. echo $e->getMessage();
    6. } 
    А вот этот зависает
    Код (PHP):
    1. try{
    2. .......
    3. }
    4. catch(Exception $e){ 
    5. $var = $e->getMessage(); //тут и виснет
    6.  echo $var;
    7. } 
    Подсказка от модератора:
    Любой код или текст конфигурации пишите между тегом [code=php] и [/code].
    Используйте отступы в коде для форматирования текста.
    Это помогает быстрее понять вас, увеличивает шанс на получение ответа.
    Что выделать? Например: PHP, HTML, CSS, JavaScript, SQL, XML, .htaccess, ini, регулярные выражения, код шаблонизаторов, результаты array/object dump и т.д.
     
  2. VLK

    VLK Старожил

    С нами с:
    15 дек 2013
    Сообщения:
    3.010
    Симпатии:
    58
    и в чем выражается "тут и виснет"
     
  3. DemoN1810

    DemoN1810 Новичок

    С нами с:
    16 дек 2015
    Сообщения:
    97
    Симпатии:
    0
  4. shurik_shink

    shurik_shink Новичок

    С нами с:
    17 май 2015
    Сообщения:
    79
    Симпатии:
    0
    В общем разобрался
    В оригинале код был
    Код (PHP):
    1. $error_msg = "Произошла ошибка: \n".$e->getMessage();
    2. ...
    3. header("Location: index.php?error_code={$error_code}&error_msg={$error_msg}");
    4. ?>
    И из-за символа "\n" переход на страницу index.php не происходил. Я же воспринял за ошибку(зависание).

    Пользователю VLK спасибо

    Подсказка от модератора:
    Любой код или текст конфигурации пишите между тегом [code=php] и [/code].
    Используйте отступы в коде для форматирования текста.
    Это помогает быстрее понять вас, увеличивает шанс на получение ответа.
    Что выделать? Например: PHP, HTML, CSS, JavaScript, SQL, XML, .htaccess, ini, регулярные выражения, код шаблонизаторов, результаты array/object dump и т.д.