Я пытаюсь отлаживать мой скрипт установки без каких-либо усилий. Когда я пытаюсь получить какой-либо вывод внутри моего цикла foreach, в моем файле Mage :: Log() нет результата.
<?php
$installer = $this;
$installer->startSetup();
$attrCodes = ['attr1', 'attr2', 'attr3'];
$objCatalogEavSetup = Mage::getResourceModel('catalog/eav_mysql4_setup', 'core_setup');
Mage::log('hello before foreach');
// get all attributes
foreach ($attrCodes as $attrCode) {
Mage::log('Attribute code: ' . $attrCode);
}
Mage::log('hello after foreach');
$installer->endSetup();
Я вижу информацию журнала до цикла foreach. Но я не получил информации внутри или после этого цикла.
Разве нельзя отлаживать скрипт установки? Обычно я работаю с PHPStorm и использую внутренний отладчик. Но кажется, что я не могу отлаживать скрипт установки с помощью PHPStorm или с помощью Mage :: Log().
РЕДАКТИРОВАТЬ:
Я полностью сожалею об этом беспорядке.
Я не давал кредитов линии комментариев над циклом, поэтому я решил сократить код здесь.
Но, по правде говоря, я не могу назвать свой сценарий обновления с комментариями строки.
В этом причина моей проблемы. Я должен изменить комментарий строки к комментарию блока /**/, и теперь он работает.
Никогда не сталкивайтесь с этой проблемой с пурпурно.
Попробуйте этот код и проверьте :
$attrCodes = array('attr1', 'attr2', 'attr3');
Mage::log('hello before foreach');
foreach ($attrCodes as $attrCode) {
Mage::log('Attribute code: ' . $attrCode);
}
Mage::log('hello after foreach');
Согласитесь, с "Tipo" проблема находится в цикле foreach. Вы должны попробовать это редактирование при создании массива:
$attrCodes = array('attr1', 'attr2', 'attr3');
[]
не будет распознана его сервером, OP будет иметь ошибку перед первым Mage::log