Пользовательский скрипт оболочки Magento - не может получить значение аргументов
-
29-09-2020 - |
Вопрос
Я пытаюсь создать пользовательский скрипт оболочки, который извлечет ZIP-файл в моем каталоге media/tmp
.
Я создал файл Leader.php в каталоге оболочки.Он расширяет генеракодицетагкод и запустить () выглядит так:
/**
* Run script
*
*/
public function run()
{
$_SESSION = array();
if ($this->getArg('unzip')) {
$zipFile = strval($this->getArg('unzip'));
echo "Unzipping {$zipFile}";
}elseif ($this->getArg('pendingList')) {
echo "this\n";
} else {
echo $this->usageHelp();
}
}
.
Команда, которую я выполняю из генеракодицетагкода.Вывод, который я получаю: Unzipping 1
Решение
Из того, что я знаю, думаю, правильный синтаксис следующий:
php -f shell/labeler.php -- --unzip file.zip
.
Синтаксис для скрипта оболочки в Magento:
php -f script.php -- [options]
.
где варианты могут быть просто флагом, как это:
php -f script.php -- test
.
В этом случае $this->getArg('test')
вернется 1 (true).
или это может быть так, как это:
php -f script.php -- --test mytest
.
В этом случае $this->getArg('test')
вернется «mytest»
Не связан с magento.stackexchange