Magento 2:如何从另一个CLI命令类运行CLI命令?

时间:2017-06-13 06:38:54

标签: php magento magento2

我正在使用自定义CLI命令&我想知道从PHP代码中调用其他命令的最佳方式是什么(没有shell_exec()或类似命令)。
例如:
当运行" php bin / magento my:custom:command"时,它会做它' s thing&最后将运行" php bin / magento cache:flush"。

有任何想法吗?

感谢。

1 个答案:

答案 0 :(得分:8)

Magento CLI构建于Symfony控制台之上。您可以使用此组件加载和运行其他命令:

(usage, disk_name)

更多信息here。虽然这对您来说不太可能是个问题,但请注意文档表明这并不总是最好的想法:

  

大多数情况下,从未在命令行上执行的代码调用命令不是一个好主意。主要原因是命令的输出针对控制台进行了优化,而不是传递给其他命令。