PHP-форк, не имея потомков, наследует файловые дескрипторы родителя? - PullRequest
5 голосов
/ 28 октября 2008

Я пытаюсь запустить команду оболочки, используя операторы backtick, но тот факт, что дочерний процесс наследует дескрипторы открытого файла php, проблематичен. Есть ли способ предотвратить это?

Я использую PHP 5.1.2

Ответы [ 2 ]

2 голосов
/ 28 октября 2008

Единственный способ, которым я действительно знаю, - это заставить детей открывать свои собственные ресурсы после разветвления.

Здесь довольно неплохое руководство по pcntl:

http://www.hackingwithphp.com/16/0/0/miscellaneous-topics http://www.hackingwithphp.com/16/1/4/duplication-of-resources-when-forking

0 голосов
/ 17 сентября 2015

Это сработало для меня:

$cmd_to_run = escapeshellarg('/path/to/file --args');
`echo $cmd_to_run | /bin/at now`;

Замените часть '/ path / to / file --args' командой, которую вы хотите запустить. Команда 'at' использует ваш демон cron для планирования задач.

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