Я написал скрипт для чтения каталога Netflix и заполнения своей БД. Все отлично работало как веб-скрипт (за исключением тайм-аутов), поэтому я перешел на , вызывая напрямую из консоли .
Я заметил несколько странностей, например, __construct (), который больше не вызывается (но это легко исправить, используя имя класса в качестве функции.
Теперь я не могу заставить работать мои массивы, как раньше , вот общая идея.
(На самом деле я пробовал несколько комбинаций, поэтому я поделюсь ими всеми)
1 - это отлично работало в версии веб-скрипта, больше не работает при вызове из консоли
//declare empty
var $genreArray=array();
//later I add values one at a time as the XML is parsed
array_push($this->genreArray,$attrs['term']);
//after I have parsed an entire "title" element, I iterate the array
foreach ($this->genreArray as $value) {
// never gets called - array seen as empty
$this->db->linkGenre($value,$this->title_uid);
}
2 - поэтому я попробовал руководство по PHP; рекомендация - ничего
//declare empty
var $genreArray=array();
//later I add values one at a time as the XML is parsed
$this->genreArray[]=$attrs['term'];
//after I have parsed an entire "title" element, I iterate the array
foreach ($this->genreArray as $value) {
// never gets called - array seen as empty
$this->db->linkGenre($value,$this->title_uid);
}
3 - наконец, я попытался вручную отследить индекс
//declare empty array
var $genreArray=array();
var $gi=0;
//later I add values one at a time as the XML is parsed
$this->genreArray[$this->gi++]=$attrs['term'];
//after I have parsed an entire "title" element, I iterate the array
foreach ($this->genreArray as $value) {
// never gets called - array seen as empty
$this->db->linkGenre($value,$this->title_uid);
}
Так что я сейчас в полном недоумении.
Кто-нибудь объявлял пустые массивы и заполнял их через консоль?
(Все 3 из них работают через Интернет - поэтому мне нужен консольный эксперт здесь)
Спасибо за поддержку, вот запрашиваемая дополнительная информация;
php -v
PHP 4.4.9 (cli) (сборка: 17 сентября 2008 г., 12:02:18)
Copyright (c) 1997-2008 The PHP Group
Zend Engine v1.3.0, Copyright (c) 1998-2004 Zend Technologies
с Zend Extension Manager v1.2.2, Copyright (c) 2003-2007, Zend Technologies
с Zend Optimizer v3.3.3, Copyright (c) 1998-2007, Zend Technologies
Каждый фрагмент был опробован в отдельном прогоне. Какие подробности о классе вас интересуют?
Я использовал операторы echo, чтобы убедиться, что код вызывается, как и ожидалось. И если я нажимаю на сценарий через URL-адрес, все запускается нормально (за первые несколько тысяч записей до истечения времени ожидания).
Не выдается никаких ошибок, я даже пытался добавить ...
error_reporting(E_ALL);
ini_set('display_errors', true);