phpbar.de logo

Mailinglisten-Archive

[php] traceroute in eine variable schreiben

[php] traceroute in eine variable schreiben

Gloss Mathias php_(at)_phpcenter.de
Tue, 13 Nov 2001 13:13:48 +0100


Aloha,

> Von: 	Zagler, Alexander[SMTP:Alex.Zagler_(at)_clix.de]
>=20
> hallo!
> wie kann ich einen systemaufruf in eine variable schreiben?
> versuch:
>=20
>    $message =3D system ("/usr/sbin/traceroute $host");
>    mail($recipient, "traceroute", $message,"From: $sender");
>=20
> habe schon alle m=F6glichen aufrufe probiert (exec, passthru, =
system),
> aber der inhalt der traceroute ist einfach nicht in der variable =
$message
> zu
> finden.
>=20
Manual -> Funktionen zur Programmausf=FChrung.

exec - F=FChrt ein externes Programm aus=20
string exec (string befehl [, string array [, int return_var]])
exec() f=FChrt ein gegebenen Befehl aus, ohne eine Ausgabe zu erzeugen. =
Die
Funktion gibt lediglich die letzte Zeile aus dem Befehlsergebnis =
zur=FCck.
Wenn Sie auf die direkte R=FCckgabe/ Ausgabe eines Befehls angewiesen =
sind,
dann benutzen Sie stattdessen die Funktion passthru().
Ist der Parameter array angegeben, wird dieses mit jeder Zeile des
Befehlsausgabe gef=FCllt. Beachten Sie, dass wenn das Array schon =
Elemente
enth=E4lt, die Funktion exec() die Ausgabe an das Array anh=E4ngt. Wenn =
Sie
dieses nicht w=FCnschen, rufen Sie die Funktion unset () f=FCr das =
Array auf,
bevor Sie es als Parameter der Funktion exec() =FCbergeben.=20

--> (ungetestet)

exec('/usr/sbin/traceroute '.$host, $aAusgabe, $sReturn);
$message =3D join ("\n", $aAusgabe);
$message .=3D "Das Programm endete mit Returncode $sReturn\n";
mail ( .... wie bei dir...)

Gr=FC=DFe, Mathias



php::bar PHP Wiki   -   Listenarchive