92309
Goto Top

PHP Script was erkennt ob es auf Konsole oder Webserver ausgeführt wird

Hi,

ein Kumpel von mir hat für Schule die Aufgabe bekommen ein PHP Script zu schreiben welches erkennt ob es auf der Konsole gestartet wurde oder über den Webserver.

Das Script soll, wenn es in der Konsole gestartet werden soll, ausgeben "Ich bin die Konsole" und wenn es auf dem Webserver gestartet wird "Ich bin der Webserver"

Aufgabestellung:
Bitte schreiben Sie ein PHP Skript, welches sowohl von der Konsole als auch auf einem Web-Server ausgeführt werden kann.
Die Ausgabe im Konsolen Programm soll sein: Ich bin die Konsole.
Die Ausgabe im Web-Server Programm soll sein: Ich bin der Web-Server.

Wir haben allerdings kein Schimmer wie wir das bewerkstelligen sollen....wurde ja auch keine genaue aussage getroffen was für eine OS darunter laufen soll und wir haben auch nich so viel Ahnung von Programmieren...

Würde mich freuen wenn hier jemand eine Lösung, bzw. einen Ansatz posten könnte, wie das Script das erkennen kann.

Vielen Dank schonmal

Grüße Sebastian

Content-Key: 150574

Url: https://administrator.de/contentid/150574

Printed on: April 25, 2024 at 22:04 o'clock

Member: kaiand1
kaiand1 Sep 08, 2010 at 08:38:23 (UTC)
Goto Top
Und wiso schreibt "dein Kumpel" dann die Frage nicht selbst?
Da es ja nicht meine Hausaufgabe ist nur so ein Tipp
phpinfo
;)
Member: maretz
maretz Sep 08, 2010 at 08:44:57 (UTC)
Goto Top
Moin,

ich werde ganz sicher NICHT eure Hausaufgaben lösen... Grad wenn es sich um so simple Dinge handelt...

Aber mal zum drüber nachdenken: Es gibt ne PHP-CLI und eine mod_php (für Apache). Es gibt PHP-Info... und: Es gibt sogar noch php.net -> dort findest du EINIGE Hilfe über befehle...
Mitglied: 92309
92309 Sep 08, 2010 at 09:15:25 (UTC)
Goto Top
Wir sind beides Systemintegratoren und er ist im Moment auf ner Schulung, gezwungener Maßen. Dementsprechend ist wohl auch seine Laune dazu...

Aber ich danke euch beiden schonmal, vieleicht können wir/er damit schon was anfangen.

EDIT:
So wie ich das gerade verstanden habe, als ich mir ma angeschaut hab was da was ist von den befehlen, brauch man doch "nur" mit php_info auslesen ob es mit php-cli gestartet wurde oder nicht? seh ich das in etwa richtig?
Member: maretz
maretz Sep 08, 2010 at 09:29:03 (UTC)
Goto Top
Probiere es doch einfach mal aus... du kannst phpinfo auch noch einschränken indem du sagst welchen Bereich du willst -> und die rückgabe dann auswerten...

Aber du wirst beim ausprobieren nicht viel kaputtmachen können (nich mit phpinfo()....)
Mitglied: 92309
92309 Sep 08, 2010 at 10:13:29 (UTC)
Goto Top
So hab jetz schon bisschen mit php_info rummgespielt und nach ner Variable gesucht die unterschiedlich ist, bin auf sessionname und clientname gestoßen, weil da bei beiden console drin stand, aber fehlanzeige steht ja auch drin wenn mans übern browser öffnet...

EDIT: ok gefunden, Server API apache und command line

Wie kann ich denn nun die "Spalte" Server API verwenden?
Im Grunde sollte es ja dann so aussehen:

<?php
 
if($_Server API == "command line interface") echo "Ich bin die Konsole";
 
else echo "Ich bin der Web-Server"
 
?>

Is zwar nich richtig, aber das is das was ich mir in etwa vorstelle.
Member: dog
dog Sep 08, 2010 at 19:01:29 (UTC)
Goto Top
5s Google hätte die Frage beantwortet:

http://www.codediesel.com/php/quick-way-to-determine-if-php-is-running- ...

Ich geb dir sogar noch eine Möglichkeit (wenig empfehlenswert):

if(defined('STDOUT')