Поймать "PHP Fatal error: Out of memory" в обработчик исключений try - Как ?
Страницы: 1
Поймать "PHP Fatal error: Out of memory" в обработчик исключений try - Как ?
Всем Доброго времени суток
Подскажите - как поймать ошибку:
PHP Fatal error:  Out of memory

В обработчик исключений ?
Делаю по логике так:

Код
try{
   $site = self::GetSite($rz['url']);
          
}catch (Exception $e){
   echo PHP_EOL.'Error'.PHP_EOL;
      print_r($e);
      exit;
}
 
но по итогу в консоли получаю:
PHP Fatal error:  Out of memory (allocated 20185088) (tried to allocate 12669953 bytes) in ......///gParsSite.php on line 203

То есть до обработки просто дело не доходит...
Посмотрите:

on-line-teaching.com/php/struct.exc.htm
Цитата
Coder пишет:
Посмотрите:

on-line-teaching.com/php/struct.exc.htm

Суть той статьи в генерации исключений самому, Мне же надо отловить ошибку - чтобы попросту высвабадить открытые ресурсы smile:(
joub,
Сервер на винде стоит?
Предлагаю Услуги по веб-разработке/программированию
HTML(HTML5), CSS(CSS3), JavaScript(jQuery, AJAX), PHP, MySQL
========================================
http://www.cy-pr.com/forum/f58/t37537/
http://www.cy-pr.com/forum/f50/t35619/
Цитата
Sillys пишет:
joub,
Сервер на винде стоит?
root@server:~# uname -a
Linux server.domain.com 2.6.32-5-686-bigmem #1 SMP Fri May 10 09:11:45 UTC 2013 i686 GNU/Linux
Если с английским в ладах, то Вам stackoverflow.com/questions/277224/how-do-i-catch-a-php-fatal-error]сюда. А если по простому, то в try должно быть, что-то, что с генерирует Вам этот Exception, то есть throw new Exception('blablabla'), только тогда сработает catch smile;)
Цитата
Константин Митюрин пишет:
Если с английским в ладах, то Вам stackoverflow.com/questions/277224/how-do-i-catch-a-php-fatal-error]сюда. А если по простому, то в try должно быть, что-то, что с генерирует Вам этот Exception, то есть throw new Exception('blablabla'), только тогда сработает catch smile;)
К сожалению я это уже понял, получается что фатальную ошибку такова (выше) рода не возможно обработать средствами php ?
Цитата
joub пишет:
Цитата
Константин Митюрин пишет:
Если с английским в ладах, то Вам stackoverflow.com/questions/277224/how-do-i-catch-a-php-fatal-error]сюда. А если по простому, то в try должно быть, что-то, что с генерирует Вам этот Exception, то есть throw new Exception('blablabla'), только тогда сработает catch smile;)
К сожалению я это уже понял, получается что фатальную ошибку такова (выше) рода не возможно обработать средствами php ?

Поймать можно, все зависит от того, что Вы потом хотите делать с этими данными.

Посмотрите пример

Код
 <?php

ini_set('error_reporting','0');

register_shutdown_function('shutdownFunction');

function shutDownFunction() { 
    $error = error_get_last();
    if ($error['type'] == 1) {
        echo "
      Error type: {$error['type']}<br/>\n
      Error message: {$error['message']}<br/>\n
      Error file: {$error['file']}<br/>\n
      Error string: {$error['line']}<br/>\n
   ";
    } 
}


blablabla();


shutDownFunction() будет выполнена в случае ошибки, а там Вы уже сам себе художник - хотите отобразите в своем стиле, хотите запишите ошибку в базу, хотите перезагрузите страницу с параметрами через header("Location: index.php?mem_limit=1G") smile:) Судя по названию файла, "gParsSite.php" Вы пишите парсер сайта.
Цитата

shutDownFunction() будет выполнена в случае ошибки, а там Вы уже сам себе художник - хотите отобразите в своем стиле, хотите запишите ошибку в базу, хотите перезагрузите страницу с параметрами через header("Location: index.php?mem_limit=1G"smile;) smile:) Судя по названию файла, "gParsSite.php" Вы пишите парсер сайта.
То что искал!
Вы правы, пишу. И при загрузке и обработке больших страниц - скрипт вылетает с ошибкой и обработке регулярных выражений.
А дальше обработать - это удалить lock файл, блокирующий выполнение нескольких скриптов одновременно )
Страницы: 1
Похожие темы:
Читают тему (гостей: 1, пользователей: 0, из них скрытых: 0)
Новые темыОбъявленияСвободное общение
09:57 3snet - гемблинг, беттинг, форекс, бинарные опционы, майнинг 
19:33 LOSPOLLOS.COM - Конвертим по рецепту Хайзенберга. Dating, Mainstream, Binary Options 
17:02 Webvork - международная товарная СРА сеть с сертифицированными офферами на Европу. 
15:12 Несколько статей хорошо выдаются в Гугле, но отвратительно в Яндексе 
13:40 Dao.AD: Монетизация и покупка Push/Pops/Inpage и Video трафика! 
11:41 2Index - быстрая индексация страниц сайта и обратных ссылок 
23:00 Продвижение по ключам 
12:12 SellBuycoin.io - надежный проводник в мир обмена криптовалют на фиат и наличные по РФ! 
10:24 Linken Sphere – браузер-антидетект нового поколения 
04:03 Просто $0.04/IP 9PROXY.COM Резидентные прокси Неограниченная пропускная способность Уникальная политика замены Без чёрного списка 
19:55 JustProxy.Biz - Резидентные прокси без ограничения по трафику 
15:41 - Вечные ссылки с трастовых сайтов 2024 проверен FastTrust 
13:32 TokenTrade — Ваш новый надежный обменник 
11:17 Oblaka.in — Обмен криптовалюты быстро, выгодно и безопасно 
16:49 monetizer.agency – рекламная сеть для взрослого и развлекательного трафика. 100$ новому вебмастеру 
20:43 Добро пожаловать в цифровой мир... 
15:59 Про мясо 
23:09 ПП от PMS remote.team - 200$ за команду 
13:28 Компьютерная мышь 
22:55 Ну что, кто куда деваете свои сайты? 
22:34 Используете беспроводные наушники?