4.9.2 Prozesse starten und schließen

Ein PHP-Script kann Systembefehle (z.B. Unix-Befehle) ausführen, um beispielsweise ein Mail-Programm aufzurufen.

Funktion Beschreibung
popen() öffnet eine Verbindung zu einem Prozess
pclose() schließt die Verbindung mit dem Prozess

Beispiel

Der Abschnitt für den Aufruf des Mailprogramms lautet:

1
2
3
4
5
6
<?php
$fd = popen("/usr/sbin/sendmail -t", "w");
fputs($fd, "To: studi@technik-emden.de\n");
fputs($fd, "Subject: Internetanfrage\n\n");
fputs($fd, "Sie haben folgende Anfrage erhalten:\n$text");
pclose($fd);

Hinweis

Sicherheitshinweis: Die Mächtigkeit von PHP führt dazu, dass alle Personen, die PHP-Skripte auf dem Webserver bereitstellen können, auch Unix-Befehle ausführen dürfen. Wenn Sie also einen Webserver konfigurieren und anderen Personen die Nutzung ermöglichen (etwa das Hochladen von PHP-Skripten), müssen Sie sich intensiv mit den Sicherheitseinstellungen in der php.ini auseinandersetzen. Das Problem sind dabei weniger die vertrauenswürdigen Personen selbst, sondern deren möglicherweise unprofessionell entwickelte PHP-Programme.