phpbar.de logo

Mailinglisten-Archive

[php] R ü ckgabewert eines externen Prozesses

[php] R ü ckgabewert eines externen Prozesses

Christian Ruetgers chr at 1komma6.com
Fre Nov 26 16:41:57 CET 2004


At 26.11.2004 16:22 (), you wrote:
>Hallo Liste

Hallo Leser ;)



>Dazu rufe ich folgende Funktion auf:
>
>Exec ('/usr/local/bin/gs -dBATCH -dUseCIEColor -dNOQUIET -sDEVICE=jpeg
>-sOutputFile=foo.%03d.jpeg eingangsdatei.pdf', $ausgabe, $returnValue);
>
>Soweit ist auch alles in Ordnung.
>
>Jetzt brauch GS aber eine weile um ein PDF in ein JPEG zu konvertieren. Das
>ist auch in Ordnung ( Skriptlaufzeitverlängerung ist eingebaut), aber aus
>einem mir nicht näher verständlichen Grund scheint PHP das Programm
>anzuschieben und sich dann einen Sch... Um weitere Informationen zu kümmern.
>Soll heißen, GS wird gestartet und es wird nicht auf eine Erfolgs- ( oder
>Misserfolgs) meldung gewartet, sondern einfach mal weitergemacht im Skript (
>das aber die Ergebnisse von GS dringend braucht)

Wenn ich es richtig im Kopf habe, muß die Laufzeit nicht verlängert werden, 
weil System-Calls (wie exec) nicht als Zeit gerechnet werden. Aber da noch 
mal nachfragen, bin ich mir nicht 100% sicher.

Wenn exec() nicht "wartet", dann liegt es daran, das das Aufgerufene 
Programm einen eigenen Prozess erzeugt und dann erst mal zurückmeldet 
"kannst weitermachen, ich arbeite im Hintergrund und melde mich dann wenn 
fertig/Fehler".

Das könnte am Paramter "-dBATCH" liegen. Warum benötist du einen Parameter 
für eine Batch-Bearbeitung, wenn nur eine Datei gewandelt werden soll?

Ich löse alles in der Art typischerweise mit "imagemagick". Der ruft dann 
schon von selbst GhostScript auf, wenn der installiert und notwendig ist 
(wie bei PDF to JPEG).


hope that helps,


-- 
Christian Ruetgers - Geschäftsführung Projekte / Technik
1komma6 - Multimediale Dienstleistungen GmbH
Fon: (0251) 57 29-7
Fax: (0251) 57 29-6
eMail: ch.ruetgers at 1komma6.com
Mobil: 0173/860 28 93

visit http://www.1komma6.com


php::bar PHP Wiki   -   Listenarchive