gpt4 book ai didi

php - 如何从 laravel Controller 执行外部 shell 命令?

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:33:07 33 4
gpt4 key购买 nike

我需要从 Controller 执行 shell 命令,但不仅限于项目中的文件,例如。 system('rm/var/www/html/test.html') 或 system('sudo unzip/var/www/html/test.zip');

我调用了该函数但没有任何反应,知道如何从 Controller 执行外部 shell 命令,例如删除另一个目录中的一个文件吗?

system('rm /var/www/html/test.html');
//or
exec('rm /var/www/html/test.html')

最佳答案

如果您想从 PHP 应用程序运行命令,我建议您使用 Symfony Process Component :

  1. 运行composer require symfony/process

  2. 使用 use Symfony\Component\Process\Process; 将类导入到您的文件中;

  3. 执行你的命令:

    $process = new Process(['rm', '/var/www/html/test.html']);

    $process->run();

如果您使用的是 Laravel,您应该可以跳过第 1 步。


或者,(如果运行 php 的进程具有正确的权限)您可以简单地使用 PHP 的 unlink()删除文件的函数:

unlink('/var/www/html/test.html');

关于php - 如何从 laravel Controller 执行外部 shell 命令?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54266041/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com