Mailinglisten-Archive | 
Hai Listlinge :-)
Also proc_close() soll ja theoretisch den Exit-Code eines Programms
weitergeben. Folgener Code liefert als Exit-Code allerdings immer -1:
<?php
        $ds = array(
                0 => array("pipe", "r"),
                1 => array("pipe", "w"),
                2 => array("pipe","w")
        );
        $res = proc_open(
                "ls",
                $ds,
                $pipes
        );
	// $exit=proc_close($res);
        while ($dat=fgets($pipes[1],1024))
        {
            echo "OUT: $dat";
        }
        while ($dat=fgets($pipes[2],1024))
        {
            echo "ERR:$dat";
        }
        fclose($pipes[0]);
        fclose($pipes[1]);
        fclose($pipes[2]);
        $exit=proc_close($res);
        echo("Exit: $exit");
?>
OK, schein ein Bug zu sein nach allem was ich gelesen habe. Führe ich das
proc_close allerdings aus bevor ich die Pipes auslese (das auskommentierte
proc_close) bekomme ich den korrekten Exit-Code. Das proc_close auszuführen
bevor ich auf die Pipes zugreife kann natürlich nicht die Lösung sein, ist
schon klar. Also, nun die Preisfrage: Gibt es einen Workaround um an den
Exit-Code zu kommen ohne auf PHP 5.1 zu warten wie wez es hier:
http://bugs.php.net/bug.php?id=22999 vorschlägt? *dummguck*
*wink*
Carsten
    php::bar PHP Wiki - Listenarchive