Я пытаюсь запустить скрипт python из laravel. Я использую версию 5.6
.
В контроллере у меня есть это
public function test_python()
{
$command = escapeshellcmd('python ' . public_path() . '\test\test.py');
$output = shell_exec($command);
dd($output);
}
Но это вернет меня null
.
Вывод должен быть Hello World!
test.py
#!/usr/bin/env python
print('Hello World!')
Если создать файл php вне моей папки laravel с этим
<?php
$command = escapeshellcmd('python C:\wamp64\www\projects\laravel\public\test\test.py');
$output = shell_exec($command);
echo $output;
И когда я запускаю php path/outside/laravel/test.php
из командной строки, я вижу правильный результат.
test.py
имеет право разрешения (-rwxr-xr-x
). И Python также прав относительно пути окружения.
Я также пытался использовать полный путь сценария, но все еще не удается.
PS: ответ от этот пост у меня не работает