1

我正在尝试构建一个命令行应用程序,以帮助为我设置一个新的本地开发环境。它只是创建了一些文件来链接虚拟主机的东西。我没有手动做任何事情。

我只是不确定如何重新启动 apache 部分。这是我的主要文件;

class SetupEnvironment extends Command
{
    public function configure()
    {
        $this->setName('new')
            ->setDescription('Set up a new development environment.')
            ->addArgument('name', InputArgument::REQUIRED, "Project or application name")
            ->addOption('sub_folder', null, InputOption::VALUE_OPTIONAL, 'Name of public folder', '');
    }

    public function execute(InputInterface $input, OutputInterface $output)
    {
        // make directory for development environment - done

        // create conf file and contents - done

        // create sym-link - done

        // add to pow - done

        // restart apache and powder up - not done

我今天才刚刚开始学习 Symfony 控制台/文件系统,所以不太确定调用已经存在的命令的正确方法,比如sudo apachectl restart然后powder up

4

2 回答 2

0

尝试使用exec()通过 php 代码运行命令行参数的命令。http://php.net/manual/en/function.exec.php

于 2016-06-14T14:42:59.553 回答
0

你可以使用exec命令:

exec('sudo apachectl restart');
于 2016-06-14T14:41:30.057 回答