Как загрузить и отредактировать текст с веб-страницы? - PullRequest
0 голосов
/ 05 мая 2019

Мне нужно открыть и отредактировать .txt с веб-страницы с помощью Symfony.Я перепробовал все, но больше всего мне удалось открыть внешний текстовый редактор и показать содержимое файла там.Но это приводит к тому, что, когда редактор открыт, время отклика страницы считается, и если редактирование занимает у меня более 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 голосов
/ 05 мая 2019

Возможно passthru() будет лучше соответствовать вашим требованиям.

Также, если вы внимательно прочитали официальную документацию для функции exec, вы можете увидеть первый комментарий, предлагающий решение для нескольких платформ:

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

и множество других примеров кода.

Но на самом деле ваша задача выглядит как пример очень плохой практики. Я полагаю, что вам это нужно только для изучения / тестирования, а не для использования в производстве.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...