resource proc_open ( string $cmd , array $descriptorspec , array &$pipes [, string $cwd [, array $env [, array $other_options ]]] )
proc_open() is similar to popen() but provides a much greater degree of control over the program execution.
$cmd can actually be multiple commands by separating each command with a newline. However, due to this it is not possible to split up one very long command over multiple lines, even when using "\\\n" syntax.
5.2.1 Added the bypass_shell option to the other_options parameter. 5.0.0 Added the cwd, env and other_options parameters.
How to set up PHP and Ruby On Rails in Leopard