P H P - Personal Home Page
9. spezielle datei-operationen
9.5 systemkommando ausführen
Die beiden folgenden funktionen führen ein systemkommando auf dem PC des anwenders aus; sie können auch dazu verwendet werden, ein programm zu starten. Wenn das im hintergrund läuft, müssen die ausgaben des programms in eine datei umgelenkt werden, weil sonst PHP hängt, bis das programm zu ende ist. Die ausgaben von systemkommandos sind meist nicht besonders gut geeignet, um direkt vom browser ausgegeben zu werden, d.h. man leitet sie am besten in eine datei um.
9.5.1 funktion system
Die funktion führt ein systemkommando aus; wenn mit dem kommando ein
programm gestartet wird, das im hintergrund abläuft, müssen die ausgaben
des programms in eine datei umgelenkt werden, weil sonst PHP hängt, bis
das programm zu ende ist.
$zeile = system ("kdo" [, $wert]);
kdo | kommando, das ausgeführt werden soll, kann auch in einer variablen stehen. Die ausgaben des kommandos sind meist nicht dafür geeignet, direkt im browser ausgegeben zu werden, d.h. man leitet sie am besten in eine datei um (vgl. beispiel). |
$zeile | variable mit der letzte zeile der kommando-ausgabe |
$wert | variable mit dem rückgabewert des kommandos |
9.5.2 funktion exec
Die funktion führt ein systemkommando aus; wenn mit dem kommando ein
programm gestartet wird, das im hintergrund abläuft, müssen die ausgaben
des programms in eine datei umgelenkt werden, weil sonst PHP hängt, bis
das programm zu ende ist.
$zeile = exec ("kdo" [, $output] [, $wert] );
kdo | kommando, das ausgeführt werden soll, kann auch in einer variablen stehen. Die ausgaben des kommandos sind meist nicht dafür geeignet, direkt im browser ausgegeben zu werden, d.h. man leitet sie am besten in eine variable oder eine datei um (vgl. beispiel). |
$zeile | variable mit der letzte zeile der kommando-ausgabe wenn die ausgaben umgelenkt werden, wird $zeile nicht versorgt. |
$wert | variable mit dem rückgabewert des kommandos |
$output | array, in den alle ausgaben des kommandos gespeichert werden. Enthält der array bereits daten sollte man sie vorher mit unset löschen. Der inhalt des array eignet sich nicht besonders gut für eine direkte ausgabe im browser. |
beispiele
Bei den drei beispielen wird das systemkommando dir ausgeführt, mit
dem der inhalt des ordners doku angezeigt wird. Bei der angabe eines
unterordners ist nicht der schrägstrich sondern backslash zu verwenden.
Beim ersten und dritten beispiel werden die ausgaben des kommandos in eine
datei umgelenkt, beim zweiten in eine variable. Der inhalt der variable
(s.u) ist eher unbrauchbar, während die beiden textdateien ein sehr
ordentliches ergebnis zeigen.
rückgabe kommando system: $wert = 0
ergebnis in datei ergebnis1.txt
kommando exec liefert in variable $ergebnis
Array ( [0] => CSS HTML JAVASCR MYSQL PHP doku-inc.php )rückgabe kommando exec: $wert = 0
kommando exec liefert in datei ergebnis2.txt
inhalt der dateien ergebnis1.txt bzw ergebnis2.txt
H T M L |
C S S |
p h p |
My S Q L |
JAVASCRIPT |
impressum
Für den inhalt der homepage hartard-bernhard.de
ist im sinne des pressegesetzes verantwortlich:
Bernhard Hartard
Gerhart-Hauptmann-Ring 18
81737 München
089 / 670 39 90
familie.hartard@t-online.de
salvatorische erklärung
Die seiten meiner homepage enthalten links
zu anderen seiten im Internet, auf deren gestaltung und inhalt ich
keinen einfluss habe. Ich übernehme keine gewähr für den inhalt der
verlinkten seiten, rechtsverstöße waren für mich zum zeitpunkt der
verlinkung auf diesen seiten nicht erkennbar, eine ständige inhaltliche
kontrolle der verlinkten seiten ist mir weder möglich noch zumutbar.
Aus rechtlichen gründen distanziere ich mich ausdrücklich vom inhalt
der verlinkten seiten und mache mir deren inhalt nicht zu eigen.
Diese erklärung gilt für alle auf meinen seiten angezeigten links.
CLOSE anzeige schließen
start
Damit startet die homepage neu, d.h. der Steinbeisser treibt wieder sein unwesen.
anfang
Hier beginnen die informationen dieser homepage
zur person
Hier findet man informationen zur person des verfassers dieser homepage, wer er ist, woher er kommt, was er gelernt hat und was er im verlauf seines lebens so getrieben hat.
spiele
Hier finden man einige spiele, aber keine wüsten ballerspiele, sondern einige echte knobeleien (hirn-jogging), zwei gesellschaftsspiele (Mensch ärgere Dich nicht, Kniffel) und das spiel aller frechen schüler: schiffe versenken.
galerien
Ein wenig heimatliebe muss erlaubt sein und deshalb findet man hier einige bildergalerien von Speyer und von seinem Dom.
backbuch
Das ist eine sammlung von backrezepten, aus verschiedenen quellen zusammengetragen und fast alle mit mehr oder weniger erfolg ausprobiert. Da findet man in den endlosen weiten des Internet natürlich mehr und besseres.
stammbaum
Das gehört eigentlich in den privaten bereich dieser homepage, denn hier wird der stammbaum des verfassers der homepage gezeigt. Weil aber beim testen der anwendung auch der stammbaum der Wittelsbacher entstanden ist, wurde beides hier veröffentlicht. Vielleicht interessiert es jemand.
exit
Hier kann man Google oder eine beliebige seite im Internet aufrufen oder diese homepage verlassen.
kontakt
Hier kann man dem verfasser und eigentümer der homepage eine email schreiben.
privat
Hier kommt man in den privaten bereich der homepage, besser gesagt, man kommt da nicht hinein, denn dieser bereich ist geschützt und nur dem eigentümer der homepage zugänglich.
doku
Hier sind die programmiertechniken dokumentiert, mit deren hilfe die homepage gebastelt wurde. Genauer gesagt man findet hier kurz gefasste bechreibungen von HTML, CSS, MySQL und Javascript. Das findet man im Internet natürlich viel ausführlicher aber für einen ersten einstieg in die seltsame welt der programmierung sind diese beschreibungen durchaus brauchbar.