拉拉维尔控制器shell_exec("作曲家更新");



我想执行以下命令: composer update 在 laravel 的控制器中,但是这个不起作用。另一方面,该命令composer info完美运行。

当我在命令提示符下执行composer update时,我的所有依赖项都在 laravel 供应商文件中正确更新,但当我尝试在控制器中执行composer update时,没有任何反应。

这是我的代码:

$data['output'] = shell_exec( 'cd '. base_path() .' && composer update' );
dd($data);

这是结果:

array:1 [▼
  "output" => null
]

你能帮我理解为什么composer update在控制器中不起作用吗?我想在没有命令提示符的情况下更新控制器中的依赖项。

谢谢。

来自 php 文档 for shell_exec()

The output from the executed command or NULL if an error occurred or the command produces no output.

听起来你最好使用passthru(),因为这会给你错误的输出。

说到错误,这个想法听起来像是一场灾难的秘诀。

相关内容

  • 没有找到相关文章

最新更新