如何在Laravel以编程的方式实现交互?

作者站长头像
站长
· 阅读数 27

我想用编程的方式实现Artisan交互,就好像下图这样,在命令行需要输入两个yes,但是用编程的模式是怎么实现的呢?求指教!

如何在Laravel以编程的方式实现交互?

我这边的代码

Artisan::call( 'backup:restore', [
   '--backup' => $filename,
] );

这样的话,会弹出错误

如何在Laravel以编程的方式实现交互?

回复
1个回答
avatar
test
2024-06-26

这个包的命令做了非交互式时的处理,你可以再加一个 -n 或者 --no-interaction 就可以了。

password 默认会从 --password 选项获取,如果没有设置,但在非交互式下,就会自动从 config('backup.backup.password') 获取。

第二个确认,它的默认值是 true ,所以也可以直接过去了。

Artisan::call( 'backup:restore', [
   '--backup' => $filename,
   '--no-interaction' => true,
]);
回复
likes
适合作为回答的
  • 经过验证的有效解决办法
  • 自己的经验指引,对解决问题有帮助
  • 遵循 Markdown 语法排版,代码语义正确
不该作为回答的
  • 询问内容细节或回复楼层
  • 与题目无关的内容
  • “赞”“顶”“同问”“看手册”“解决了没”等毫无意义的内容