использование интерфейса оболочки в Magento 2
Я использовал функцию exec() для выполнения команд magento.
В качестве exec() не рекомендуется использовать приведенный ниже код.
class Test{
protected $_shell;
public function __construct(
\Magento\Framework\ShellInterface $shell
){
$this->_shell = $shell;
}
public function execute() {
$this->_shell->execute("php bin/magento cache:disable");
}
Приведенный выше код работает не так, как ожидалось, может ли кто-нибудь помочь мне с вышеуказанным требованием.
Я ищу выполнение команд командной строки без использования SSH.
Спасибо!!
1
1 answers
Замените свой код, как показано ниже
use Magento\Framework\Shell;
use Magento\Framework\Shell\CommandRenderer;
class Test{
protected $_shell;
public function __construct(
.....
.....
){
....
$this->_shell = new Shell(new CommandRenderer());
}
public function execute() {
$this->_shell->execute("php bin/magento cache:disable");
}
2
Author: jafar pinjar, 2021-01-21 13:04:13