» Startseite
» Newsübersicht
» Kontakt
» Impressum

» Forum
» Gästebuch

» Einführung PHP
   » Anfang
   » Erste Schritte
   » Variablen
   » if-Anweisung
   » Log. Operatoren
   » Übung
   » Dateien
   » Schleifen
   » Array
   » Dateien Teil 2
   » Datum & Zeit
   » Mail Funktion
   » Sessions

» Einführung MySQL

PHP-Einfach.de

Counterdienst:
Digicount.de
Unser werbefreier Counter- und Statistikdienst

Nützliche Funktionen

Hier lernt ihr noch ein paar nützliche Funktionen von PHP kennen.

Gibt es die Variable schon?
Möchte man mit PHP überprüfen, ob es eine Variable schon deklariert wurde, d.h. ob es diese schon "gibt", so kann man dies mit isset($variable) überprüfen.
<?php
$var = $_GET["var"];

if(isset($var))
   {
   echo "Variable wurde gesetzt";
   }
else
   {
   echo "Variable wurde nicht gesetzt";
   }
?>
Wenn ihr diese Seite ganz normal aufruft, dann erhalten wir als Ausgabe, dass die Variable nicht gesetzt wurde, wenn wir dann aber an die URL ein ?var=123 hängen, erhalten wir als Ausgabe, dass die Variable übermittelt wurde.

Wenn man überprüfen möchte, ob es eine Variable noch nicht gibt, benötigen wir !isset($variable)
<?php
$var = $_GET["var"];

if(!isset($var))
   {
   echo "Variable wurde nicht gesetzt";
   }
?>
Das Ausrufungszeichen vor isset steht für NOT und kehrt die Rückgabe/Ergebnis der Funktion um. Also wenn isset(); TRUE zurück gibt, steht dort ein FALSE und umgekehrt.

Man kann aber auch ganz normale Variablen überprüfen lassen.

Gibt es diese Datei?
Eine gute Frage ist, ob es eine Datei gibt. So kann man z.B. tote Links vermeiden.
$datei = "datei.php";
if(file_exists($datei))
   {
   echo "Die Datei gibt es";
   }
?>
Mit file_exists() können wir überprüfen lassen, ob es eine Datei gibt. Wenn die Datei vorhanden ist, gibt die Funktion TRUE, sonst FALSE zurück

Schreibt man !file_exists, so wird überprüft, ob die Datei nicht vorhanden ist.

Ist die Datei beschreibbar?
Wenn man Texte in Dateien speichert, so dürfen diese Dateien nicht Schreibgeschützt sein, das heißt sie brauchen die Schreibrechte CHMOD(777).

Mit is_writeable() können wir überprüfen, ob die Datei beschreibbar ist.
<?php
if(is_writeable("datei.php"))
   {
   echo "sie ist beschreibbar";
   }
?>
Mit einem Ausrufungszeichen vor dem is_writeable erhalten wir das Gegenteil als Effekt, sprich wir können überprüfen, ob wir die Datei nicht beschreiben können.

Zufall

Hin und wieder braucht man ein Zufallszahlen, z.B. für kleinere Spielereien. Diese kann man aber auch z.B. benutzen, um ein zufälliges Bild auszugeben.

Die Funktion selber ist einfach:
<?php
$zufall = rand(1,100);
echo $zufall;
?>
Mit der Funktion rand bestimmen wir eine Zufallszahl zwischen 1 und 100. Ihr könnt natürlich auch einen anderen Zahlenbereich benutzen.

In der Klammer steht die Untergrenze und danach die Obergrenze des Zahlenraumes.

Damit wir nicht immer die gleiche "Zufallszahl" erhalten, ist es wichtig, dass wir einen Startwert festlegen:

<?php
srand((double)microtime()*1000000);
$zufall = rand(1,100);
?>
Dies geht mit srand. Dabei werden die Mikrosekunden (microtime) mal 1 Millionen genommen. Anschließend wird wieder eine Zahl zwischen 1 und 100 ermittelt.
Bei neueren PHP-Versionen wird die Festlegung des Startwertes automatisch vorgenommen.

Den Besucher ausspionieren

Mit PHP haben wir die Möglichkeit, viele Informationen über den Besucher zu erhalten z.B. seine IP-Adresse.

Diese erfahren wir so:
<?php
$ip = getenv("REMOTE_ADDR");
echo $ip;
?>
Wenn ihr diesen Befehl auf eurem virtuellem Server aufrufen, erhalten ihr normalerweise 127.0.0.1.
Auf dem echtem Server erhaltet ihr aber dann die IP Adresse des Besuchers.

Außerdem kann man noch erfahren, auf welcher Seite der Besucher gerade ist:
<?php
$seite = $_SERVER["PHP_SELF"];
echo $seite;
?>
Wenn eure Datei jetzt in einem Unterorder liegt, so wird der Ordnername auch angezeigt, möchte man diesen entfernen, so braucht man basename($variable).
<?php
$seite = $_SERVER["PHP_SELF"];
echo basename($seite);
?>
Wenn man aber den Namen des Ordners wissen möchte, sollte man dirname($variable) benutzen.
<?php
$seite = $_SERVER["PHP_SELF"];
echo dirname($seite);
?>
Wenn man viel mit dynamischen Seiten arbeitet, reicht es nicht mehr aus, nur den Dateinamen zu erfahren.
Denn wenn man auf der Seite index.php?id=1 ist, und dies mit PHP_SELF anzeigen möchte, so erhält man als Ausgabe index.php.

Damit diese Werte auch angezeigt werden, müssen wir die Funktion etwas umschreiben:
<?php
$seite = $_SERVER["REQUEST_URI"];
echo $seite;
?>
Jetzt würden wir als Ausgabe z.B. index.php?id=1 erhalten.

Mit PHP können wir auch erfahren, woher der Besucher kommt:
<?php
$seite = $_SERVER["HTTP_REFERER"];
echo $seite;
?>
Dieser Befehl funktioniert aber nur, wenn wir durch einen Link oder ähnliches auf die Seite kommen sind.
Manche Browser unterdrücken diese Information.

Wir können auch erfahren welchen Browser der Besucher benutzt:
<?php
$browser = $_SERVER["HTTP_USER_AGENT"];
echo $browser;
?>


Als nächstes lernen wir, wie man mit Sessions arbeitet.

Autor Andavos

News

Forum

Newsletter


© PHP-Einfach.de 2003 - 2007