Archiv verlassen und diese Seite im Standarddesign anzeigen : exec gibt nur eine zeile aus
~|=?FrAnZ?=|~
09-07-2003, 17:31
Hallo,
wenn ich ein programm per exec ausführ gibt es nur die erste Zeile aus!
<?php
$uptime = exec("uptime");
$prozesse = exec("ps -ax");
$df = exec("df -a");
echo "UPTIME: " . $uptime . "<br><br><br>";
echo "Prozesse: " . $prozesse . "<br><br><BR>";
echo "df: " . $df . "<br><br><br>";
?>
Hallo,
> $prozesse = exec("ps -ax");
// Jede Zeile der Ausgabe wird in das Array $ausgabe_array geschrieben
$prozesse = exec("ps -ax", $ausgabe_array);
// Ausgabe des Array, wäre auch mit foreach möglich
print_r($ausgabe_array);
Offe
~|=?FrAnZ?=|~
22-07-2003, 13:57
foreach schleife:
9 foreach ($df as $value)
10 {
11 echo "df: "
12 print_r($value);
13 echo "<br><br><br>";
14 }
Error:
Parse error: parse error, unexpected T_STRING, expecting ',' or ';' in /etc/httpd/htdocs/uptime.php on line 12
Wo liegt da der Fehler?
Lies mal die Fehlermeldung.... schonmal dran gedacht Zeile 12 mit nem Semikolon abzuschließen?
~|=?FrAnZ?=|~
22-07-2003, 17:03
da ist doch ein ";" dran.
Original geschrieben von ~|=?FrAnZ?=|~
da ist doch ein ";" dran.
Dann versuchs mal mit Zeile 11 ;)
Gruß micha
War ein freudscher vergugger... meine natürlich auch zeile 11...
~|=?FrAnZ?=|~
22-07-2003, 18:35
ahh danke. :D
aber jetzt kommt
Warning: Invalid argument supplied for foreach() in /etc/httpd/htdocs/uptime.php on line 8
nochmal das ganze script, so wie es jetzt aussieht:
<?php
$uptime = exec("uptime", $uptime);
$prozesse = exec("ps -ax", $prozesse);
$df = exec("df -a", $df1);
echo "UPTIME: " . $uptime . "<br><br><br>";
echo "Prozesse: " . $prozesse . "<br><br><BR>";
foreach ($df as $value)
{
echo "df: ";
print_r($value);
echo "<br><br><br>";
}
?>
Ist ja auch logisch.... lies nochmal was offe am Anfang geschrieben hat.
Verwende:
foreach ($df1 as $value)
Ein Blick ins manual hilft manchmal übrigens auch weiter:
http://de3.php.net/manual/en/function.exec.php
~|=?FrAnZ?=|~
22-07-2003, 19:23
jetzt gehts. :D
das war aber nur versehentlich passiert weil ich ausprobiert habe wie es funktionieren könnte. Ich habe ganz oben bei
$df = exec("df -a", $df1); habe ich statt df1 mal df geschrieben und das unten geändert und danach wo ich es oben wieder geändert habe unten nicht geändert.
DANKE für deine Hilfe!
Powered by vBulletin® Version 4.2.5 Copyright ©2025 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.