Comments
9/07: Execute programs in PHP
Problem: ich will auf einem (Windows)Server eine Applikation ausführen. Dies soll per PHP geschehen.
Lösung: Mit der Funktion exec('program.exe'); kann man beliebige Programme auf dem Server ausführen, ob Windows oder Linux spielt keine Rolle. So konnte ich per PHP eine C#-Applikation starten.
Zu beachten ist: falls bei der PHP-Konfiguration safe_mode eingeschaltet ist (=on) können keine beliebigen Programme ausgeführt werden. Es muss dazu die Variable safe_mode_exec_dir in der PHP-Konfiguration (php.ini) gesetzt werden. Dort wird der absolute Pfad zu einem Verzeichnis definiert, aus dem Programme per exec() gestartet werden dürfen. In meinem Fall heisst die Zeile in der php.ini:
safe_mode_exec_dir = c:/Programme/xampplite/htdocs/exec/
Im Code sieht es so aus:
$id = exec("program.exe");
Das Arbeitsverzeichnis ist das, in dem sich das PHP-Script befindet, nicht in dem des exec-Programms. Das Programm (program.exe) befindet sich im definierten exec-Verzeichnis.
1 Kommentar »
Hinterlasse einen Kommentar
Line and paragraph breaks automatic, e-mail address never displayed, HTML allowed: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>


Super Eintrag, genau das habe ich benötigt. Danke
26. April 2007 @ 08:25 (comment)