If PHP is running via a web server, and mutiple system
calls are made within the script to another script,
hundreds of processes are created. Here is an example:
Script 1:
<?php
for ($i=1; $i<=5; $i++) {
system("php script2.php");
}
?>
Script 2:
<?php
exit;
?>
The effect is the same (and more difficult to stop) when
the system calls are made in the background. e.g.
system("php script2.php >>/dev/null 2>>/dev/null &");
system("php script2.php >/dev/null 2>&1");
I have even tried calling a shell script, which in turn
calls the second PHP script (both in the background), but
it still causes lots of processes.
The "exec" command is also affected.
At first, I thought this was a problem with either Zeus web
server of Fast CGI, but I have since tried it with Apache
and normal CGI with the same effect.
Does anyone have any idea why this happens and whether there is any way to prevent it? If have posted a bug report to bugs.php.net (ID 14997), but so far to no avail.
Any help would be very gratefully appreciated.