Функция прерывания Youtube Zend Api

Это код:

... require_once 'Zend/Loader.php'; // the Zend dir must be in your include_path Zend_Loader::loadClass('Zend_Gdata_YouTube'); Zend_Loader::loadClass('Zend_Uri_Http'); $yt = new Zend_Gdata_YouTube(); $videoEntry = $yt->getVideoEntry($id_video); .... 

В немногих строках этого сценария, SOMETIMES (я не понимал, почему это происходит только несколько раз, а не в других, казалось бы случайным) Zend_Gdata_YouTube () или getVideoEntry ($ id_video) не возвращается, и скрипт умирает. В папке скрипта нет файлов журналов, поэтому я не понимаю, что это происходит во время выполнения. Любая помощь или предложение будут оценены, спасибо.

Я столкнулся с той же проблемой, но с загрузкой видео youtube. Копаясь в файлах Zend, я обнаружил, где скрипт умирает. Он находится в Zend/Gdata/HttpAdapterStreamingSocket.php :

 while ($chunk !== FALSE) { if (! @fwrite($this->socket, $chunk)) { require_once 'Zend/Http/Client/Adapter/Exception.php'; throw new Zend_Http_Client_Adapter_Exception( 'Error writing request to server'); } $chunk = $body->read(self::CHUNK_SIZE); } 

Удалив @ из fwrite , я получил максимальное время выполнения, превышающее ошибку. Отключив время выполнения цикла, ошибка не появилась снова:

 $executionTime = ini_get('max_execution_time'); set_time_limit(0); while ($chunk !== FALSE) { if (! fwrite($this->socket, $chunk)) { require_once 'Zend/Http/Client/Adapter/Exception.php'; throw new Zend_Http_Client_Adapter_Exception( 'Error writing request to server'); } $chunk = $body->read(self::CHUNK_SIZE); } set_time_limit($executionTime); 

Возможно, это не ваша конкретная проблема, но попробуйте посмотреть в файлах Zend для вызовов @fwrite и сделать то же самое, потому что ваш скрипт, вероятно, умирает при написании фрагментов в сокете и функции, которая подавляет ошибки.