За последние 24 часа нас посетили 22863 программиста и 1260 роботов. Сейчас ищут 662 программиста ...

"красивый" вывод исключений и ошибок.

Тема в разделе "Прочие вопросы по PHP", создана пользователем Koc, 18 апр 2009.

  1. Костян

    Костян Активный пользователь

    С нами с:
    12 ноя 2009
    Сообщения:
    1.724
    Симпатии:
    1
    Адрес:
    адуктО
    ничё. Не пойму разницу:
    PHP:
    1.      <?php
    2. function excH()
    3.      {
    4.         $r = ob_get_clean();
    5.         echo  'Exc: ' . $r;
    6.         /*$r = '';
    7.         while (ob_get_level()) {
    8.             $r .= ob_get_clean();
    9.         }
    10.         echo  'Exc: ' . $r;*/
    11.        
    12.      }
    13.      
    14.      set_exception_handler('excH');
    15.      
    16.      for ($i = 1; $i < 5; $i++) {
    17.          ob_start();     
    18.          echo 'started ' . $i . '<br>';
    19.          if ($i == 2) {
    20.             throw new Exception('OOOOOpss');         
    21.         }  
    22.      }
    23.  
     
  2. Simpliest

    Simpliest Активный пользователь

    С нами с:
    24 сен 2009
    Сообщения:
    4.511
    Симпатии:
    2
    Адрес:
    Донецк
    Костян
    Так разница видна? :)
    PHP:
    1. <?php
    2. $r = '';
    3.          while (ob_get_level()) {
    4.              $r .= ob_get_clean() . ' pass at level = ' . ob_get_level();
    5.          }
    6.          echo  'Exc: ' . $r;
     
  3. Костян

    Костян Активный пользователь

    С нами с:
    12 ноя 2009
    Сообщения:
    1.724
    Симпатии:
    1
    Адрес:
    адуктО
    Simpliest
    а, ну правильно. Я предложил ловить весь буфер ничего не показывая.