如何从网页加载和编辑txt?

时间:2019-05-05 19:40:02

标签: php html symfony

我需要使用symfony从网页打开和编辑.txt。我已经尝试了所有方法,但是我所能做的最大的就是打开一个外部文本编辑器,并在那里显示文件的内容。但这会导致在打开编辑器时,页面的响应时间正在计数,如果我花费的时间超过30秒,则会给我执行时间错误。

这是编辑器与文件一起使用的代码:

/**
 * @Route("/exeBlack", name="exeBlack", methods="GET|POST")
 */
public function exeBlack()
{        
    chdir("c:\WINDOWS");
    exec('notepad.exe C:\xampp\htdocs\sgisi-master\public\archivo\UNAHBlacklist\Blacklist.txt');
    return $this->render('Default/dashboard.html.twig');
}

此代码在控制器中,我通过一个按钮调用它。

我怎样才能使页面完成渲染,并且文本编辑器正在运行并且不计算响应时间并不重要?

1 个答案:

答案 0 :(得分:-2)

也许passthru()会更好地满足您的要求。

另外,如果您仔细阅读official documentation中的exec函数,则可以看到建议多平台解决方案的第一条评论:

function execInBackground($cmd) { 
    if (substr(php_uname(), 0, 7) == "Windows"){ 
        pclose(popen("start /B ". $cmd, "r"));  
    } 
    else { 
        exec($cmd . " > /dev/null &");   
    } 
}

以及许多其他代码示例。

但是实际上您的任务看起来是非常糟糕的做法的示例。我想您只需要将其用于学习/测试目的,而不会在生产中使用。