Christoph Burghardt

 Start    Bibeltexte    Hobby    Impressum    Sitemap    DMOZ open directory project

Skripte PHP

Alle Datenbanken anzeigen
Alle Tabellen einer Datenbank anzeigen
Alle Felder einer Tabelle anzeigen
Alle Datensätze einer Tabelle anzeigen
Arrays
Benutzername Passwort
Counter in PHP ohne Datenbank
Dateiupload
Datenbank anlegen
Datenbank löschen
Datensätze erzeugen
Datensätze anzeigen
Datensätze ändern
Datensätze löschen
Datensätze als Array
E-Mail E-Mails versenden mit PHP
Excel-Dateien übertragen in MySQL
Funktionen
Gästebuch

 
HTACCESS
Inhalt eines Feldes anzeigen
IP Datum Zeit speichern
lang_getfrombrowser()
Login
Login-Funktion-Session
 mysqldump Datenbanksicherung
Passwortschutz Benutzerverwaltung
PHP Info
Sqlite
Sqlite und PHP 5
Tabelle anlegen
Tabelle löschen
Umfrage
Verbindung zur Datenbank herstellen
Verschlüsselung
for-Schleife
while-Schleife
PDF-Dateien erstellen mit PHP
Zeichnen von Linien mit PHP
Zeichnen einer Ellipse mit PHP
Skripte Umfrage
Lehrerbenotung

Valid HTML 4.01 Transitional


Darstellung von PHP 5 und MySQL

28.10.2006 05.09.2007 29.12.2007 Ende

PHP ist eine Skriptsprache, die auf dem Server ausgeführt wird.
PHP ist serverlastig.
PHP ist caseinsensitiv, es erfolgt also keine Unterscheidung zwischen Groß-
und Kleinschreibung (außer bei Variablen).
Als Entwicklungsumgebung ist bereits der Apache-Server unter Windows installiert.
Installation von PHP
Es gibt zwei Möglichkeiten PHP zu installieren. Als CGI-Version oder als Modul-
Version. Wird eine PHP-Seite aufgerufen muss der PHP- Interpreter gestartet werden.
Bei der CGI-Version muss für jeden Prozess der PHP-Interpreter geladen werden. In der
Modul-Version ist der Interpreter ständig geladen. Für umfangreich programmierte Seiten sollte
die Modulversion verwendet werden.
1. Systemsteuerung Windows Komponente hinzufügen
2. Aktivieren von IIS (Internetinformationsserver)
3. der IIS startet von selbst
4. neueste PHP-Version herunterladen von http://www.php.net
5. kopieren der Datei php.ini.dist in das Verzeichnis C:\Windows
6. umbenennen der Datei in php.ini
7. die Datei php.ini öffnen und den Eintrag "extension_dir" suchen
8. als Wert "c:\php\ext" eingeben
9. speichern
Testen
folgendes Script
<?
Phpinfo() ;
?>
Diese Datei muss unter php.php abgespeichert werden und in den htdocs-Ordner des Apache-Servers kopiert werden.
Dann in den Browser folgendes eingeben: http://localhost/php.php
Im Browser sollte nun eine Informationsseite über die PHP-Konfiguration angezeigt werden.
Der Interpreter bearbeitet nur Dateien mit für ihn zugewiesenen Endungen .php und einer Anweisung zum Start einer
PHP-Kodierung z.B. <?php (XML-kompatibel) oder <? (Short-Tag)
Ein einfaches PHP-Skript wäre z.B.
<html>
<head>
</head>
<body>
<?php
?>
</body>
</html>
Die PHP-Kodierung befindet sich im Body-Bereich. Um Texte an den Browser zu senden wird die Funktion echo verwendet.
<html>
<head>
</head>
<body>
<?php
echo "Dies ist ein Skript" ;
?>
</body>
</html>
Der String wird in Anführungszeichen angegeben. Das Semikolon kennzeichnet das Ende des Befehls.
HTML-Tags können mit in die Funktion echo eingearbeitet werden (z.B. für Fettschrift ).
<html>
<head>
</head>
<body>
<?php
echo "<b>Dies ist ein Skript</b>" ;
?>
</body>
</html>
Sprachelemente und Syntax
Kommentare
Es besteht die Möglichkeit Text einzubauen der im Browser nicht sichtbar ist.
Beispiele:
<?php
# Kommentar...
// Kommentar...
echo "<b>Dies ist ein Skript</b>" ;
/* Dies ist ein Block-Kommentar, Sie können somit mehrere Zeilen kommentieren, ohne überall ein # oder // zu setzen  */
?>
Sonderzeichen können Probleme ergeben
so ist es falsch:
<?php
echo "<b>Dies ist ein "Skript"</b>" ;
?>

und so ist es richtig:
<?php
echo "<b>Dies ist ein \" Skript \"</b>" ;
?>
ein vorangehender Backslash ist erforderlich

Variablen
Variablen dienen als Platzhalter. Variablen werden mit einem vorangestellten Dollarzeichen markiert. Es wird zwischen Groß- und Kleinschreibung unterschieden. Die Variablen können als Zahl oder Zeichenkette angegeben werden. Die Zeichenkette muss in Anführungszeichen gesetzt werden.

<?php
 $var = 1 ;
?>

Variablen-Typen unter PHP  

String Zeichenkette
Integer Ganzzahl
Double Fließkommazahl
Array bietet mehrere Elemente
Object ein Objekt, Instanz einer Klasse
Boolean Wahrheitswert, True oder False
Null entspricht  keinem Wert

Wann gibt eine Variable False zurück?

wenn die Variable auf False gesetzt ist
Ganzzahl hat den Wert 0
Fließkommazahl hat den Wert 0.0
"0" als Zeichenkette
gar kein Inhalt
Null als Inhalt geschrieben

PHP ordnet der Variable automatisch den Typ zu.

Beispiel:

<?php
$vareins = 1 ;
$varzwei = "zwei" ;

echo $vareins ;
echo $varzwei ;
?>

1zwei wird im Browser angezeigt

Funktionen, die ein True zurückgeben, wenn ein bestimmter Wert vorliegt

is_nummeric() handelt sich um eine Zahl
is_string() liegt ein Sting vor
is_double() wird eine Fließkommazahl genutzt
is_integer() vorhandene Ganzzahl
is_object() genutztes Objekt


Mit der Funktion intval() wird eine Variable (z.B. als Zeichenkette "1a")  in einen Ganzzahl-Wert konvertiert.

<?php
$vareins = "1a" ;
$vareins = intval ($vareins) ;
echo $vareins ;
// Ausgabe : 1
?>

Dies funktioniert nur , wenn die Zahl als erstes steht "1a"

Beispiel:

<?php
$vareins = "a1" ;
$vareins = intval ($vareins) ;
echo $vareins ;
// Ausgabe : 0
?>

Die Lösung dafür sind die Funktionen strval und doubleval.

Bei Variablen als Zahl stehen alle Grundrechenarten zur Verfügung.

<?php
$a = 1 ;
$b = 2 ;

echo $a + $b ;
echo $a - $b ;
echo $a * $b ;
echo $a / $b ;

?>

Durch ein doppeltes Dollarzeichen erfolgt ein besonderer Zugriff auf Variablen.

<?php
$name = "Vorname" ;
$zugriff = "name" ;

echo $$zugriff ;
// Ausgegeben wird "Vorname"

?>

$$zugriff entspricht $name weil $zugriff "name" entspricht

In Bezug auf Zeichenketten herrscht häufig Unsicherheit, wo genau der Unterschied zwischen einfachen und doppelten Anführungszeichen liegt.

So kommt ein
$x="Hallo Welt";
scheinbar auf das Gleiche heraus wie ein
$x='Hallo Welt';

Der Unterschied liegt im Automatismus beider Möglichkeiten. Bei doppelten Anführungszeichen werden Variablen automatisch mit ihrem Wert ersetzt.

<?php
echo '\n' ;  // Es wird /n ausgegeben

?>

<?php
echo "\n" ;  // Es wird ein Umbruch ausgegeben  (neue Zeile)

?>

<?php
$x=3 ;
echo '$x' ; Es wird $x ausgegeben
echo "$x"; Es wird 3 ausgegeben

?>

Konstanten define ()

Konstanten sind Variablen mit feststehenden Werten

<?php
define ("MEINEKONST" , "Hallo Welt") ;
echo MEINEKONST ;

?>

üblich ist es, Konstanten groß zu schreiben
Konstanten sind normalerweise Case-sensitiv
dritter Parameter für define() 1 oder 0

<?php
define ("MEINEKONST", "Hallo Welt",0) ;
echo meinekonst ;
define ("MEINEKONST2", "Hallo Welt",1) ;
echo meinekonst2;

?>

Operatoren und Ausdrücke

Operatoren sind z.B. das Gleichheitszeichen oder das Pluszeichen
mit Operatoren werden Ausdrücke gebildet
ein Ausdruck gibt immer "wahr" oder "falsch" zurück

 

Operator Verwendung Funktion
+ $a+$b =Summe von $a und $b
- $a-$b =Differenz von $a und $b
* $a*$b =Produkt von $a und $b
/ $a/$b =Quotient von $a und $b
% $a%$b =Der Rest von $a dividiert durch $b (modulo)

das Gleichheitszeichen als Zuweisungsoperator
$x=4
doppeltes Pluszeichen bedeutet eine Variable wird um 1 erhöht
Punkt in Zeichenketten bedeutet eine Verknüpfung von Zeichenketten

Beispiel:
<?php
$string = "Hallo";
$string.= "Welt" ;
echo $string; //Hallo Welt

$string2 = "Hallo Du";
$string2.= ",";
echo string2. "Benutzer"; //Hallo Du, Benutzer
?>

Zur Erstellung von Ausdrücken werden Vergleichsoperatoren eingesetzt.

Operator

Verwendung

Funktion

== $a==$b Wahr, wenn $a gleich $b ist. (doppeltes Gleichheitszeichen)
!= $a!=$b Wahr, wenn $a ungleich $b ist.
< $a<$b Wahr, wenn $a kleiner $b ist.
> $a>$b Wahr, wenn $a größer $b ist.
<= $a<=$b Wahr, wenn $a kleiner oder gleich $b ist.
>= $a>=$b Wahr, wenn $a größer oder gleich $b ist.
=== $a===$b Wahr, wenn $a gleich $b ist und der Typ von $a identisch mit dem Typ von $b ist.


Funktionen programmieren

function

<?php
function gruss()
{

echo "Fühle Dich gegrüßt";

}
gruss();

?>

<?php
function summe ($a, $b)

{
$summe=($a+$b);
echo $summe;
}

summe(1000,111);

summe(1,3);

summe(2,4);

// ausgegeben wird 111146

?>


Variablen nur innerhalb der Funktion und auch nur innerhalb von Summe werden verarbeitet.

<?php
function summe ($a,$b)

{
$Summe=   ($a+$b);
echo $Summe;
}

$a = 7;

summe (3,4);

//$a ist 3, nicht 7!

?>

<?php

function ausgabe()

{

global$ausgabe; //ohne global passiert nichts!

echo $ausgabe;

}

$ausgabe="Hallo";

ausgabe();
ausgabe();

?>

Variable als statisch definieren mit Hilfe von static
<?php
function ausgabe()

{

static $zaeler;
$zaeler++;
echo $zaeler;

}

$zaeler=0;
ausgabe(); // es wird 1 angezeigt
ausgabe(); // es wird 12 angezeigt
ausgabe(); //  es wird123 angezeigt
?>


Funktion mit Standardwert (ohne Parameter)
die Zuteilung des Standardwertes erfolgt durch das Gleichheitszeichen

<?php

function ausgabe($text="Kein Text")

{
echo $text;
}

ausgabe();
ausgabe("<br>Ein Text");

?>

Ausgabe des Skriptes:
Kein Text
Ein Text

Funktionen liefern einen Wert zurück, durch return
<?php

function summe($a,$b)

{
$summe=$a+$b;
return $summe;
}


$zahl=summe(10,4);
$zahl++;

echo $zahl;   // Ausgabe 15

?>

Bedingungen und Schleifen

Bedingungsprüfung if-Anweisung

<?php

$zahl=1;

if($zahl==1) echo "Eine Eins!";

?>
Achtung zwei Gleichheitszeichen, ein einzelnes Gleichheitszeichen ist ein Zuweisungsoperator
Bedingungen können durch AND (&&) und OR (||) beliebig verknüpft werden.

<?php

$zahl=1;

if($zahl==1 || $zahl==2) echo "Eine Zahl";

?>

if-Bedingungen erweitern durch else und elseif

<?php

$zahl=1;

if ($zahl==1) echo "Eine Eins";

else echo "Keine Eins";

?>

Weiterprüfungen duch elseif

<?php

$zahl=15;

if($zahl==15) echo "Fünfzehn";
elseif($zahl==16) echo" Sechzehn";
else echo "Nicht 15 oder 16";

?>

Überprüfung von Codeblöcken mittels geschweifter Klammern


<?php

$zahl=33;
if($zahl==33)

{echo "Dreiunddreißig";
echo "<br>";
}

else echo "Eine andere Zahl";
?>

switch

jedem Wert ist eine Aktion zugeordnet
dieses ist übersichtlicher als if-Bedingungen

<?php
$zahl=3;

switch($zahl)

{
case 3: echo "Eine Drei"; break;

}

?>

entspricht $zahl=1000 erfolgt die Ausgabe Eintausend Zweitausend, weil break; hinter case 2000 steht
<?php

$zahl=2000;

switch($zahl)

{
case 1000: echo "Eintausend";
case 2000: echo "Zweitausend";

break;
}

?>

for Schleife

<?php

for ($i=0; $i<11;$i++)

{

echo $i;
echo"<br>";
}


?>
Ausgegeben wird:
0
1
2
3
4
5
6
7
8
9
10

while Schleife

<?php

$q=0;
while ($q <5)

{

echo $q;
$q++;

}

?>php

Abbruch von Schleifen durch break

<?php
$a=0;
while ($a<11)

{
$i=0;
while ($i<6)

  {
if($i>3) break 1;
$i++;
   }

$a++;

echo "<br>";
echo "a :$a";
}

?>
$i erhält maximal den Wert 3, danach "bricht" die Schleife auf dieser Ebene ab.

Abbruch des Skriptes durch die Anweisung "exit".

<?php

exit("Ende");
echo "Endlich Schluss";

?>

Referenzen
Beispiel

<?php

$x=3;
$y=$x;
$y=4;

echo $x;  // ausgegeben wird 3

?>

Änderung der Referenz durch das kaufmännische Und-Zeichen &
Beispiel

<?php

$x=3;
$y=&$x;
$y=4;

echo $x; // ausgegeben wird 4

?>

Beispiel
Durch das kaufmännische Und-Zeichen & wird die Variable $i berechnet. Bei der Definition der Funktion Quadrat
wurde $u verwendet.
<?php

function quadrat (&$u)
{
$u=$u*$u;
}

$i=3
quadrat ($i);

echo $i;  // ohne das kaufmännische Und-Zeichen & erfolgte die Ausgabe 3 (echo $i)

?>

Arrays

Arry bezeinet eine Variable, welche aus mehren Elementen besteht.
Arrys erhalten Bezeichner (oder Schlüssel oder Index genannt) für eine bestimmte Speicherstelle im Array
der Bezeichner steht in eckiger Klammer

<?php

$array ['vorname'] = "Vorname";
$array ['nachname'] = "Nachname";

echo $array ['vorname'];

?>

<?php
$i=0;
while ($i<21)
{

$array[]="Durchgang $i";
$i++;

}
print_r ($array);

?>

Durch die Funktion print_r() wird der gesamte Inhalt der Variable angezeigt.

ausgegeben wird:

Array ( [0] => Durchgang 0 [1] => Durchgang 1 [2] => Durchgang 2 [3] => Durchgang 3 [4] => Durchgang 4 [5] => Durchgang 5 [6] => Durchgang 6 [7] => Durchgang 7 [8] => Durchgang 8 [9] => Durchgang 9 [10] => Durchgang 10 [11] => Durchgang 11 [12] => Durchgang 12 [13] => Durchgang 13 [14] => Durchgang 14 [15] => Durchgang 15 [16] => Durchgang 16 [17] => Durchgang 17 [18] => Durchgang 18 [19] => Durchgang 19 [20] => Durchgang 20 )

<?php
 
$array =  array ('bezeichner'  => 'Wert', 'key'  => 'value');

echo $array ['key'];      // Ausgabe value

?>

einem Bezeichner wird ein Wert zugeordnet (durch denOperator  =>)

Mehrdimensionale Arrays

<?php
$array ['person1'] ['vorname']="Vorname";
$array ['person1'] [nachname']="Nachname";

?>

<?php
$array= array ('bezeichner' =>array( 'key' =>'value'));
echo $array ['bezeichner'] ['key'];      //Ausgabe value

?>

Konvertieren von Arrays

Über explode() wird eine Zeichenkette in ein Array verwandelt.

<?php

$Zeichenkette="Heute ist ein Feiertag";

$array=explode (" ", $Zeichenkette);

echo $array [3];  // Ausgabe: Feiertag

?>

Durch die Funktion extract() steht jedes Array-Element unter seinem Bezeichner zur Verfügung.
<?php

$array= array ( 'vorname' => 'vorname',
'nachname' => 'meinname');

extract($array);

echo $nachname;   //Ausgabe meinname

?>


Um aus den Werten von Variablen ein Array zu erstellen, wird die Funktion compact () verwendet.

Beispiel:

<?php
$var1 = "banane";
$var2 = "birne";
$var3 = "apfel";
$array = compact("var1","var2","var3");
print_r($array);
?>

Ausgabe: Array ( [var1] => banane [var2] => birne [var3] => apfel )

Arrays miteinander vereinen durch array_merge()

<?php

$array1=array('wert1','wert2','wert3');
$array2=array('wert4','wert5');
$array=array_merge($array1,$array2);
print_r($array);

?>
ausgegeben wird:

Array ( [0] => wert1 [1] => wert2 [2] => wert3 [3] => wert4 [4] => wert5 )

Arrays verbinden durch array_combine()

<?php

$array1=array('wert1','wert2');
$array2=array('a1','b1');
$array=array_combine($array1,$array2);
print_r($array); // ausgegeben wird   Array ( [wert1] => a1 [wert2] => b1 )

?>

in Arrays nach Elementen suchen durch array_search
Es wird zu einem Wert der entsprechende Bezeichner gesucht.

<?php

$array=array('a1' =>'5000', 'a2' => '6000');
$ergebnis = array_search ('6000', $array);
print_r($ergebnis); //ausgegeben wird a2

?>

alternativ dazu die Funktion in_array()

<?php

$array=array('a1' =>'5000', 'a2' => '6000');
$ergebnis = in_array  ('6000', $array);
print_r($ergebnis); // ausgegeben wird 1(True)
?>

Sortieren von Arrays

sort() es erfolgt eine Sortierung von oben nach unten
rsort() es erfolgt die umgekehrte Sortierung

<?php

$array = range(1,20);

rsort($array);

echo implode(" | ",$array);

// ausgegeben wird: 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1

?>

für assoziative Arrays:
asort()
arsort()

Mischung von Arrays durch die Funktion:

shuffle()

Die Funktion shuffle() ist ein Zufallsgenerator für numerische Arrays.

<?php

$array = range(1,20);

shuffle($array);

echo implode(" | ",$array);

//ausgeben wird: 8 | 17 | 18 | 20 | 14 | 15 | 1 | 2 | 12 | 4 | 11 | 10 | 13 | 6 | 16 | 9 | 5 | 19 | 3 | 7

?>

Durchlaufen von Arrays

<?php

$array=array('wert1', 'wert2', 'wert3','wert44');
foreach ($array as $inhalt);
echo $inhalt;     //Ausgabe: wert44
?>

<?php
$array = array ( 'wert1' => 'Inhalt1 ', 'wert2' => 'inhalt2');

while (list ($wert,$inhalt) = each ($array))

echo " $wert : $inhalt";            //Ausgabe: wert1 : Inhalt1 wert2 : inhalt2

?>

Zielgerichtetes Durchgehen von Arrays

<?php
$array = array ( 'Trabant', 'Wartburg', 'Lada', 'BMW', 'VW', 'Renault', 'Audi', 'Peugeot');

echo end ($array);        // letztes Element
echo current ($array);  // Wert des aktuellen Elementes (Bezugspunkt)
echo prev ($array);     // ein Wert zurück
echo next ($array);     // ein Wert vor
echo key ($array);     // Bezeichner des aktuellen Elementes
echo reset($array);    // zurücksetzen
echo current ($array);
echo key ($array);
?>

//Ausgabe: PeugeotPeugeotAudiPeugeot7TrabantTrabant0

Reguläre Ausdrücke

Reguläre Ausdrücke sind Suchmuster.

<?php
$string="Dominic";
if ( eregi ( "[abcdefghij]ominic", $string )) echo "enthalten";

// Ausgabe: enthalten
?>

<?php
$string="kaminski";
if (eregi ("[uvwxy||(abcdefghijk)]aminski",$string )) echo "enthalten";       //Operator || Oder

?>

Oder-Verknüpfungen (Pipe) können zum Suchen von Wörtern eingesetzt werden.

<?php
$string="Im Juli 2007 haben wir schlechtes Wetter";
if (eregi ("Juli | August | September",$string )) echo "enthalten";

?>

Der Punkt als Platzhalter:

<?php
$string="August";
if (eregi (".ugust",$string)) echo "enthalten";  // Ausgabe enthalten

?> 

Durch das .* werden beliebig viele Zeichen zwischen "Ged" und "ld" erfasst.

<?php
$string="Geduld";
if (eregi ("Ged(.*)ld", $string)) echo "enthalten" ;

?>

ersetzten String ausgeben:

<?php
$string="Übungsaufgabenbuch";
$string=eregi_replace( "Übungs(.*)buch", "\\1", $string);
echo $string; // Ausgabe aufgaben

?>

Wird ein ^ -Zeichen einem Ausdruck vorangestellt, wird nur mit dem Anfang einer Zeichenkette verglichen.

<?php
$string1="Haustür";
$string2="Türsteher";
if ( eregi ("^Tür", $string1)) echo "enthalten in 1";
if ( eregi ("^Tür", $string2)) echo "enthalten in 2";
// ausgegeben wird: enthalten in 2

?>

Umfassende Prüfungen durch geschweifte Klammern (Delimiter). So kann geprüft werden, ob ein Zeichen viermal
hintereinander vorhanden ist.


<?php
$string="Romyyyyyyy";
if( eregi( "y{5}", $string)) echo "enthalten";

?>

Fehler in PHP-Skripten

Meldungen

1. Hinweise (Notices)
Der Code ist unschön geschrieben.
z.B.
<?php
echo $array [vorname];

?>

so ist es richtig:
<?php
echo $array ['vorname']

?>

2. Warnungen
Fehler im Code, führen nicht zum Abbruch des Skriptes

3. Fatal Error, Parse Error
Ein Fatal Error führt zum Abbruch des Skriptes.
z.B. vergessenes Semikolon am Ende einer Anweisung

Safe Mode

Serverseitig werden Befehle von der Benutzung in Skripten ausgeschlossen.

Funktionen

Funktionen für Zeichenketten (Zeichenketten-Funktionen)

Die Funktionen dienen der Analyse, Umwandlung und Bearbeitung von Zeichen und Zeichenketten.

Funktionen zur Analyse

strlen()
ermittelt die Länge einer Zeichenkette (Anzahl der Zeichen)

Beispiel:

<?php
$a=Zeichenkette;
$b=ChristophBurghardt;
echo strlen($a)."<br/>";   //Absatz erzeugen durch ."<br/>"
echo strlen($b);

?>

count_chars()
Die Häufigkeit des Vorkommens jedes einzelnen Zeichens wird gezählt.

Beispiel:

<?php
$a=Beispielzeichenkette;
echo count_chars($a,0); // Ausgabe: array

?>

<?php
$a=Beispielzeichenkette;
echo count_chars($a,3); //Ausgabe: einen String mit allen vorkommenden Zeichen Bcehiklnpstz

?>

str_word_count()
Ermittelt die Anzahl der Wörter innerhalb einer Zeichenkette.

Beispiel:

<?php
$a="Ich will mir eine Honda Fireblade kaufen.";
echo str_word_count($a,0); //Ausgabe: 7

?>


Bearbeitungsfunktionen

strtolower()

liefert den String (Zeichenkette) komplett in Kleinbuchstaben zurück

Beispiel:

<?php
$a="Honda";
echo strtolower($a);  // Ausgabe: honda

?>

strtoupper()
liefert den String komplett in Großbuchstaben zurück

Beispiel:

<?php
$a="Honda";
echo strtoupper($a); // Ausgabe: HONDA

?>

ucfirst()
wandelt den ersten Buchstaben einer Zeichkette in einen Großbuchstaben um

Beispiel:

<?php
$a="über";
echo ucfirst($a); // Ausgabe: Über

?>

ucwords()
wandelt den ersten Buchstaben aller Wörter einer Zeichenkette in ein Großbuchstaben um

Beispiel:

<?php
$a= "Heute ist schönes Wetter."; // Ausgabe: Heute Ist Schönes Wetter.
echo ucwords($a);

?>

Bereinigung

chop() oder rtrim()
entfernt alle Whitespaces und Leerzeichen am Ende einer Zeichenkette
(Whitespaces= \n, \r, \t, \v, \0 )



ltrim()
entfernt alle Whitespaces und Leerzeichen am Anfang einer Zeichenkette (l steht für "leading whitespaces")



trim()
entfernt alle Whitespaces und Leerzeichen am Anfang und am Ende einer Zeichenkette



Zerteilung und Zusammenführung

explode()
explode(separator, string, limit)
teilt einen String anhand von Trennzeichen
ist der Parameter Limit vorhanden, wird der String nur bis zu diesem Parameter zerlegt

Beispiel:

<?php
$b= "Haus 1 Garten 1 Insel 1 Brücke 1 Fenster 1 Schaukel 3 Museum 1 Bahnhof 1 Mädchen";
$array = explode (1, $b, 7);
print_r($array);
// Ausgabe: Array ( [0] => Haus [1] => Garten [2] => Insel [3] => Brücke [4] => Fenster [5] => Schaukel 3 Museum [6] => Bahnhof 1 Mädchen )

?>


implode() oder join()
implode(string glue, array parts)
verbindet die Elemente eines Arrays, Verbindung durch den Parameter glue

Beispiel:

<?php
$a=array('Vorname', 'Andreas');
$b=implode( ':',$a);
echo $b; //Ausgabe: Vorname:Andreas

?>


substr()
substr(string, start, length)
liefert einen Teil der Zeichenkette zurück

Beispiel:

<?php
$a="123456789";
echo substr($a, 1, 5); // Ausgabe: 23456

?>


str_pad()
str_pad(string, length, pad, pad_type) pad_type: STR_PAD_LEFT, STR_PAD_BOTH, STR_PAD_RIGHT
erweitert die Zeichenkette

Beispiel:

<?php
$a=Christoph;
$b=Romy;
$c=str_pad($a, 20, $b, STR_PAD_BOTH);
echo $c; // Ausgabe: RomyRChristophRomyRo

?>


Suchen und Ersetzen

strpos()
strpos(String, gesuchter String, Startwert)

Beispiel:

<?php
$a="Drogenstrich Hamburg St.Georg";
echo strpos($a, "St.",3);  //Ausgabe: 21

?>

strrpos()
sucht das letzte Vorkommen des Zeichens
numerischer Wert
bei einem negativen Suchergebnis liefert strrpos() False

Beispiel:

<?php
$a="Afghanistan";
echo strrpos($a, "a"); // Ausgabe: 9

?>

substr_count()
gibt die Anzahl des Vorkommens des gesuchten Strings an
bei negativem Suchergebnis 0

Beispiel:

<?php
$a="strstrstr";
echo substr_count($a,"str"); //Ausgabe: 3

?>

strstr()
sucht das erste Vorkommen des Suchstrings
gibt den Suchstring mit dem Reststring zurück
Diese Funktion unterscheidet Klein- und Großschreibung.

Beispiel:

<?php
$a='Entlasten Sie sich durch ein konsequentes "Nein" wie angemerkt, hat nicht
der Tag zu wenig Stunden, sondern Sie zu viele Aktivitäten.';
echo strstr($a,'sondern'); //Ausgabe: sondern Sie zu viele Aktivitäten.

?>

stristr()
sucht das erste Vorkommen des Suchstrings
gibt den Suchstring mit dem Restring zurück
Diese Funktion unterscheidet nicht Klein- und Großschreibung (case insensitive).

Beispiel:

<?php
$a="Klein- und Großschreibung";
$b= stristr($a, "n");
echo $b;  //Ausgabe: n- und Großschreibung

?>

strchr()
entspricht der Funktion strstr(), nur soll needle als einzelnes Zeichen angegeben werden
Die Funktion sucht das erste Vorkommen des Zeichens und gibt den Reststring zurück.

Beispiel:

<?php
$a="Klein- und Großschreibung";
echo strchr($a, "-"); //Ausgabe: - und Großschreibung

?>


strrchr()
sucht das letzte Vorkommen des gesuchten Zeichens
gibt das gesuchte Zeichen und den Reststring zurück

Beispiel:

<?php
$a="Klein- und Großschreibung";
echo strrchr($a, "i"); //Ausgabe: ibung

?>

ist needle kein String oder Zeichen erfolgt die Umwandlung in ein ASCII-Zeichen (dem Zahlenwert entsprechend)

Beispiel:

<?php
$a="Klein- und Großschreibung";
echo strrchr($a, 105); //Ausgabe: ibung


?>

substr_replace()
substr_replace(string1, string2, start, length)
Mit dieser Funktion ersetzt man einen Teil der Zeichenkette.

Beispiel:

<?php
$a="Christoph Burghardt";
$b="Lisa Burghardt";
echo substr_replace($a, $b, 0,19); //Ausgabe: Lisa Burghardt

?>

str_replace()
str(gesuchter String, neuer Sring, gesamter String)
Innerhalb einer Zeichenkette (gesamter String) wird ein String gesucht und durch einen neuen ersetzt.

Beispiel:

<?php
$a= "Heute, am 24.08.2007, fahre ich mit dem Motorrad nach St.Georg.";
echo str_replace("Motorrad", "Auto", $a); //Ausgabe: Heute, am 24.08.2007, fahre ich mit dem Auto nach St.Georg.

?>

Manipulationen

strrev()
Diese Funktion dreht eine Zeichenkette um.

Beispiel:

<?php
$a="Alles Große und Edle ist einfacher Art";
echo strrev($a); //Ausgabe: trA rehcafnie tsi eldE dnu eßorG sellA

?>

str_shuffle()
Diese Funktion ordnet die Zeichen einer Zeichenkette zufällig an.

Beispiel:

<?php
$a="Der Verzicht hat oft einen besseren Geschmack, als das Verlangen.";
echo str_shuffle($a); //Ausgabe: VnfeannrDrclshstens o nhek irmehab.tceG edrczesg ,as lteie aVea

?>

HTML-Entities

Entities dienen zur Darstellung von Sonderzeichen in HTML.
Ein Entity beginnt mit einem "&" und endet mit einem Semikolon.
Dazwischen befinden sich maximal 6 Buchstaben.

htmlentities()
htmlentities(String, Konstante, Zeichensatz)
Diese Funktion wandelt alle Sonderzeichen einer Zeichenkette in die entsprechenden Entities um.
mögliche Konstanten:
ENT_COMPAT Es werden nur doppelte Anführungszeichen konvertiert.
ENT_QUOTES Es werden alle Anführungszeichen konvertiert.
ENT_NOQUOTES Es werden keine Anführungszeichen konvertiert.
Der standardmäßige Zeichensatz ist ISO-8859-1.
Beispiel:

<?php
$a="<<>>'''";
echo htmlentities($a, ENT_NOQUOTES); //Ausgabe im Quelltext:&lt;&lt;&gt;&gt;'''

?>

htmlspecialchars()
Diese Funktion wandelt nur HTML-spezifische Sonderzeichen in die entsprechenden Entities um.

get_html_translation_table()
Gibt die Übersetzungstabelle an, welche von HTML_ENTITIES oder HTML_SPECIALCHARS benutzt wird.

Beispiel:

<?php
$a= get_html_translation_table(HTML_SPECIALCHARS);
print_r($a);
// Ausgabe im Quelltext:
Array
(
["] => &quot;
[<] => &lt;
[>] => &gt;
[&] => &amp;
)

?>

<?php
$a= get_html_translation_table(HTML_ENTITIES);
print_r($a);
// Ausgabe im Quelltext:
Array
(
[ ] => &nbsp;
[¡] => &iexcl;
[¢] => &cent;
[£] => &pound;
[¤] => &curren;
[¥] => &yen;
[¦] => &brvbar;
[§] => &sect;
[¨] => &uml;
[©] => &copy;
[ª] => &ordf;
[«] => &laquo;
[¬] => &not;
[­] => &shy;
[®] => &reg;
[¯] => &macr;
[°] => &deg;
[±] => &plusmn;
[²] => &sup2;
[³] => &sup3;
[´] => &acute;
[µ] => &micro;
[¶] => &para;
[·] => &middot;
[¸] => &cedil;
[¹] => &sup1;
[º] => &ordm;
[»] => &raquo;
[¼] => &frac14;
[½] => &frac12;
[¾] => &frac34;
[¿] => &iquest;
[À] => &Agrave;
[Á] => &Aacute;
[Â] => &Acirc;
[Ã] => &Atilde;
[Ä] => &Auml;
[Å] => &Aring;
[Æ] => &AElig;
[Ç] => &Ccedil;
[È] => &Egrave;
[É] => &Eacute;
[Ê] => &Ecirc;
[Ë] => &Euml;
[Ì] => &Igrave;
[Í] => &Iacute;
[Î] => &Icirc;
[Ï] => &Iuml;
[Ð] => &ETH;
[Ñ] => &Ntilde;
[Ò] => &Ograve;
[Ó] => &Oacute;
[Ô] => &Ocirc;
[Õ] => &Otilde;
[Ö] => &Ouml;
[×] => &times;
[Ø] => &Oslash;
[Ù] => &Ugrave;
[Ú] => &Uacute;
[Û] => &Ucirc;
[Ü] => &Uuml;
[Ý] => &Yacute;
[Þ] => &THORN;
[ß] => &szlig;
[à] => &agrave;
[á] => &aacute;
[â] => &acirc;
[ã] => &atilde;
[ä] => &auml;
[å] => &aring;
[æ] => &aelig;
[ç] => &ccedil;
[è] => &egrave;
[é] => &eacute;
[ê] => &ecirc;
[ë] => &euml;
[ì] => &igrave;
[í] => &iacute;
[î] => &icirc;
[ï] => &iuml;
[ð] => &eth;
[ñ] => &ntilde;
[ò] => &ograve;
[ó] => &oacute;
[ô] => &ocirc;
[õ] => &otilde;
[ö] => &ouml;
[÷] => &divide;
[ø] => &oslash;
[ù] => &ugrave;
[ú] => &uacute;
[û] => &ucirc;
[ü] => &uuml;
[ý] => &yacute;
[þ] => &thorn;
[ÿ] => &yuml;
["] => &quot;
[<] => &lt;
[>] => &gt;
[&] => &amp;
)

?>

Umkehrung der Übersetzungsrichtung durch die Funktion array_flip().

Beispiel:

<?php
$a= get_html_translation_table(HTML_ENTITIES);
$b=array_flip($a);
print_r($b);
Ausgabe im Quelltext:
Array
(
[&nbsp;] =>  
[&iexcl;] => ¡
[&cent;] => ¢
[&pound;] => £
[&curren;] => ¤
[&yen;] => ¥
[&brvbar;] => ¦
[&sect;] => §
[&uml;] => ¨
[&copy;] => ©
[&ordf;] => ª
[&laquo;] => «
[&not;] => ¬
[&shy;] => ­
[&reg;] => ®
[&macr;] => ¯
[&deg;] => °
[&plusmn;] => ±
[&sup2;] => ²
[&sup3;] => ³
[&acute;] => ´
[&micro;] => µ
[&para;] => ¶
[&middot;] => ·
[&cedil;] => ¸
[&sup1;] => ¹
[&ordm;] => º
[&raquo;] => »
[&frac14;] => ¼
[&frac12;] => ½
[&frac34;] => ¾
[&iquest;] => ¿
[&Agrave;] => À
[&Aacute;] => Á
[&Acirc;] => Â
[&Atilde;] => Ã
[&Auml;] => Ä
[&Aring;] => Å
[&AElig;] => Æ
[&Ccedil;] => Ç
[&Egrave;] => È
[&Eacute;] => É
[&Ecirc;] => Ê
[&Euml;] => Ë
[&Igrave;] => Ì
[&Iacute;] => Í
[&Icirc;] => Î
[&Iuml;] => Ï
[&ETH;] => Ð
[&Ntilde;] => Ñ
[&Ograve;] => Ò
[&Oacute;] => Ó
[&Ocirc;] => Ô
[&Otilde;] => Õ
[&Ouml;] => Ö
[&times;] => ×
[&Oslash;] => Ø
[&Ugrave;] => Ù
[&Uacute;] => Ú
[&Ucirc;] => Û
[&Uuml;] => Ü
[&Yacute;] => Ý
[&THORN;] => Þ
[&szlig;] => ß
[&agrave;] => à
[&aacute;] => á
[&acirc;] => â
[&atilde;] => ã
[&auml;] => ä
[&aring;] => å
[&aelig;] => æ
[&ccedil;] => ç
[&egrave;] => è
[&eacute;] => é
[&ecirc;] => ê
[&euml;] => ë
[&igrave;] => ì
[&iacute;] => í
[&icirc;] => î
[&iuml;] => ï
[&eth;] => ð
[&ntilde;] => ñ
[&ograve;] => ò
[&oacute;] => ó
[&ocirc;] => ô
[&otilde;] => õ
[&ouml;] => ö
[&divide;] => ÷
[&oslash;] => ø
[&ugrave;] => ù
[&uacute;] => ú
[&ucirc;] => û
[&uuml;] => ü
[&yacute;] => ý
[&thorn;] => þ
[&yuml;] => ÿ
[&quot;] => "
[&lt;] => <
[&gt;] => >
[&amp;] => &
)

?>

nl2br()
Diese Funktion ergänzt alle PHP-Umbruchzeichen (\n) mit den entsprechenden HTML-Umbruchzeichen (<br/>.

Beispiel:

<?php
$a="meine\n\n\nZeichenkette";

echo nl2br($a);
//Ausgabe im Quelltext:
meine<br />
<br />
<br />
Zeichenkette

?>

Vergleichsfunktionen

strcmp()
strcmp(string1,string2)
Diese Funktion führt einen binären Vergleich durch.

1.Beispiel:

<?php
$a="jkl";
$b="zz";
echo strcmp($a,$b); //Ausgabe:-1

?>

2.Beispiel:

<?php
$a="z";
$b="Z";

echo strcmp($a,$b); //Ausgabe:1

?>

Rückgabewerte:
 0=die Zeichenketten sind identisch
 1=string1 > string2
-1=string1 < string2

strcasecmp()
Diese Funktion entspricht der Funktion strcmp(), ist aber Case-insensitiv.

<?php
$a="z";
$b="Z";

echo strcasecmp($a,$b); //Ausgabe:0

?>

Natürlicher Vergleich

strnatcmp()
Diese Funktion führt einen natürlichen Vergleich durch.

Beispiel:

<?php
$a=array('Haus12', 'Haus2', 'Haus10', 'Haus1');
$b=array('Haus12','Haus2','Haus10','Haus1');
usort($a,'strcmp');
usort($b, 'strnatcmp');


echo "binäre Sortierung:<br/>";
print_r ($a);

echo "<br/>";
echo 'natürliche Sortierung:<br/>';

print_r ($b);

?>

//Ausgabe:
binäre Sortierung:
Array ( [0] => Haus1 [1] => Haus10 [2] => Haus12 [3] => Haus2 )
natürliche Sortierung:
Array ( [0] => Haus1 [1] => Haus2 [2] => Haus10 [3] => Haus12 )

strnatcasecmp()
entspricht der Funktion strnatcmp() - ist aber Case-insensitive

Rückgabewerte:
 0=die Zeichenketten sind identisch
 1=string1 > string2
-1=string1 < string2


Ähnlichkeitsvergleich

similar_text()
similar_text(string1, string2, percent)

Beispiel:

<?php
$a="Mayer";
$b="Mueller";
echo similar_text($a,$b);  //Ausgabe:3
echo similar_text("Mayer", "maier"); //Ausgabe:3

?>

levenshtein()
Diese Funktion berechnet die minimale Anzahl von Zeichen, welche eingefügt, ersetzt oder gelöscht werden müssen,
um den String1 in den String2 umzuwandeln.

Beispiel:

<?php
$a="Christoph Burgardt";
$b="Lisa Burghardt";
echo levenshtein($a,$b);  //Ausgabe: 8

?>

Ausgabefunktionen

echo()
bei doppelten Anführungszeichen Ausgabe des Variableninhalts
bei einfachen Anführungszeichen Ausgabe eines Sprachkonstrukts

Beispiel:

<?php
$a="Heute ist schönes Wetter.";
echo "$a"; //Ausgabe: Heute ist schönes Wetter.
echo "<br/>"; //Absatz in PHP
echo '$a'; //Ausgabe: $a

?>

print()
Die Funktionsklammern sind nicht erforderlich.

printf()
printf(Format,String)
Die Formatierungsanweisungen fangen mit einem Prozentzeichen an.

0 oder Leerzeichen, Auffüllung des Strings
- Ausrichtung des Stings links
Länge des Strings
Anzahl der Dezimalstellen

Formatangaben:
b, Integer Binärwert
c, Integer ASCII-Zeichen
d, Integer Dezimalwert signed
u, Integer Dezimalwert unsigned
f, float Fließkommazahl
o, Integer Oktazahl
s, String
x, Integer Hexadezimalzahl Kleinbuchstaben
X, Integer Hexadezimalzahl Großbuchstaben

Beispiel:

<?php
$a=(21);
printf("%010d%020d",$a,$a); //Ausgabe: 000000002100000000000000000021

?>

sprintf()
Diese Funktion gibt wie printf() einen formatierten String zurück. Allerdings nicht als Ausgabe auf der Konsole.


str_repeat()
str_repeat(string,n)
ermöglicht ein Wiederholen der Zeichenkette

Beispiel:

<?php
$a="5025";
echo str_repeat($a,3); //Ausgabe: 502550255025

?>


Zeichenfunktionen

chr()
Umwandlung eines ASCII-Wertes in die symbolische Darstellung

Beispiel:

<?php
$a="60";
echo chr($a); //Ausgabe: <

?>

ord()
Gegenstück zu chr()

Beispiel:

<?php
$a="<";
echo ord($a); //Ausgabe: 60

?>


Mathematische Funktionen

abs()
Absolutwert

Beispiel:

<?php
$a="-0.001";
echo abs($a); //Ausgabe: 0.001

?>

ceil()
Aufrunden einer Zahl

Beispiel:

<?php
$a="-4.5";
echo ceil($a); //Ausgabe: -4

?>

floor()
Abrunden einer Zahl

Beispiel:

<?php
$a="-4.5";
echo floor($a); //Ausgabe: -5

?>

round()
round(Zahl, Nachkommastelle zum Runden)
entspricht dem kaufmännischem Runden

Beispiel:

<?php
$a="1.5555555";
echo round($a,4); //Ausgabe: 1,5556

?>

exp()
exp(float number)
gibt die Potenz e hoch number zurück
e = eulersche Zahl ~ 2,71828
Beispiel:

<?php
$a="2";
echo exp($a); //Ausgabe: 7.38905609893

?>

log()
log(float numer)
Basis ist e~2,71828

Beipiel:

<?php
$a="9";
echo log($a); //Ausgabe: 2.19722457734

?>

Probe: e hoch 2.19722457734 = 9

log10()
Basis ist 10

Beispiel:

<?php
$a="9";
echo log10($a); //Ausgabe: 0.954242509439

?>

Probe: 10 hoch 0.954242509439 = 9

pow()
pow(Basis, Exponent)

Beispiel:

<?php
$a="6";
$b="2";
echo pow($a,$b); //Ausgabe: 36

?>

sqrt()
berechnet die Quadratwurzel

Beispiel:

<?php
$a="121";
echo sqrt($a); //Ausgabe: 11

?>

max()
numerisch größter Eingabewert

Beispiel:

<?php
$a="1";
$b="0.001;
$c="-0.001;
echo max($a,$b,$c); //Ausgabe: 1

?>

min()
numerisch kleinster Eingabewert

Beispiel:

<?php
$a="1";
$b="7";
$c="-1";
$d="-1.11";
echo min($a,$b,$c,$d); //Ausgabe: -1.11

?>


Kreiszahl π

pi()

Beispiel:

<?php
echo pi(); //Ausgabe: 3.14159265359

?>

PHP-Konstante M_PI

Beispiel:

<?php
echo M_PI; //Ausgabe: 3.14159265359

?>

Trigonometrische Funktionen

Umrechnung der Gradzahl des Winkels in das entsprechende Bogenmaß
Bogenmaß= Grad x π /180

Umwandlungsfunktionen

deg2rad()
Umwandlung des Winkels von Grad in Bogenmaß

Beispiel:

<?php
$a=90;
echo deg2rad($a); // Ausgabe:
1.57079632679

?>

rad2deg()
Umwandlung des Winkels von Bogenmaß in Grad

Beispiel:

<?php
$a=
1.57079632679;
echo rad2deg($a); //Ausgabe:
89.9999999997

?>

sin()
Eingabe im Bogenmaß

Beispiel:

<?php
$a=90;
echo sin(deg2rad($a)); //Ausgabe: 1

?>

cos()
Eingabe im Bogenmaß

Beispiel:

<?php
$a=180;
echo cos(deg2rad($a)); //Ausgabe: -1

?>

tan()
Eingabe im Bogenmaß

Beispiel:

<?php
$a=45;
echo tan(deg2rad($a)); //Ausgabe: 1

?>

asin()
Arcus-Sinus (Arcus, Arkus lat. Bogenmaß eines Winkels)
Ausgabe im Bogenmaß, Umwandlung in Grad durch rad2deg()

Beispiel:

<?php
$a=1;
echo rad2deg(asin($a)); //Ausgabe: 90

?>

acos()
Arcus-Cosinus
Ausgabe im Bogenmaß, Umwandlung in Grad durch rad2deg()

Beispiel:

<?php
$a=(-1);
echo rad2deg(acos($a)); //Ausgabe: 180

?>

atan()
Arcus-Tangens

Beispiel:

<?php
$a=1;
echo rad2deg(atan($a)); //Ausgabe: 45

?>

atan2()
Arcus-Tanges ermittelt aus dem X- und Y-Wert

Beispiel:

<?php
$a=1; //X-Wert
$b=1; //Y-Wert
echo rad2deg(atan2($a,$b)); //Ausgabe: 45

?>

Konvertierungsfunktionen

Zahlensysteme

Dual, Basis 2, benutzte Ziffern 0 und 1,  Beispiel: 111 Dual 1*2^2 + 1*2^1+1*2^0  = 7  Dezimal
Oktal, Basis 8, benutzte Ziffern 0 bis 7, Beispiel: 323 Oktal 3*8^2 + 2*8^1 + 3*8^0 = 211 Dezimal
Dezimal, Basis 10, benutzte Ziffern 0 bis 9
Hexadezimal, Basis 16, benutzte Ziffern 0 bis 9, benutzte Zeichen A bis F, A=10, B=11, C=12, D=13, E=14, F=15
Beispiel: 1C13 Hexadezimal 1*16^3 + 12*16^2 + 1*16^1 + 3*16^0 = 7187 Dezimal

Universelle Konvertierungen

base_convert()

base_convert(string, fromebase, tobase)

Beispiele:

<?php
$a=111;
echo base_convert($a, 2, 10); //Ausgabe: 7

?>

<?php
$a="1C13";
echo base_convert($a, 16, 10); // Ausgabe: 7187 von Hexadezimal (16) nach Dezimal (10)

?>

Dezimale Konvertierungen

bindec()
binär in dezimal

Beispiel:

<?php
$a="001000111110000111";
echo bindec($a); //Ausgabe: 36743

?>

decbin()
dezimal in binär

<?php
$a="36743";
echo decbin($a); //Ausgabe:
1000111110000111

?>

octdec()
oktal in dezimal

Beispiel:

<?php
$a="323";
echo octdec($a); //Ausgabe: 211

?>

decoct()
dezimal in oktal

Beispiel:

<?php
$a="211";
echo decoct($a); //Ausgabe: 323

?>

hexdec()
hexadezimal in dezimal

Beispiel:

<?php
$a="1C13";
echo hexdec($a); //Ausgabe: 7187

?>

dechex()
dezimal in hexadezimal

Beispiel:

<?php
$a="7187";
echo dechex($a); //Ausgabe: 1c13

?>

Zufallsgeneratoren

rand()

rand(min,max)

Beispiel:

<?php
$a=getrandmax(); // größtmöglichster Zufallswert
$b=10; // kleinstmöglichster Zufallswert 10
echo $a; // Ausgabe: 32767
echo "<br/>";
echo rand($b,$a); //Ausgabe: Zufallswert

?>

Ab der PHP-Version 4.2.0 ist es nicht mehr notwendig, den Zufallsgenerator über die Funktion srand()
zu initialisieren.

mt_rand()
mt_rand(min,max)

Beispiel:

<?php
$a=mt_getrandmax(); // größtmöglichster Zufallswert
$b=100;
echo $a; //Ausgabe:
2147483647 über 2 Milliarden Zufallswerte
echo "<br/>";
echo mt_rand($b,$a); //Ausgabe: Zufallswert

?>

Formatierungen

number_format()
number_format( Zahl, Anzahl der Dezimalstellen, Trennzeichen zwischen der Ganzzahl und den Dezimalstellen,
Trennzeichen zwischen den Tausendern )

Beispiel:

<?php
$a="1000000";
$b="5000,50";
$c="11110,00003";
echo number_format($a); //Ausgabe: 1,000,000 (ohne Angabe erfolgt die Darstellung
echo "<br/>";                 // mit einem Komma zwischen den Tausendern)
echo number_format($b,2); //Ausgabe: 5,000.00 (ohne Angabe erfolgt die Darstellung mit einem Punkt
echo "<br/>";                     //zwischen der Ganzzahl und den Dezimalstellen)
echo number_format($c,10,",","."); //Ausgabe: 11.110,0000000000

?>

money_format()
money_format(Format,Zahl)
funktioniert nicht auf den Windows-Systemen

Beispiel:

<?php
$number = 1234.56;
setlocale(LC_ALL, 'de_DE');
echo money_format('%i', $number); //Ausgabe: 1.234,56 EUR

?>

Datum und Uhrzeit

Es werden das Datum und die Uhrzeit vom Server abgefragt.

date()
date(Format, Timestamp)
Die Angabe von Timestamp ist optional. Fehlt die Angabe von Timestamp, dann wird das aktuelle Datum und die aktuelle
Uhrzeit angezeigt. Der Parameter Timestamp wird in Form einer positiven oder negativen Dezimalzahl angegeben.
Diese Dezimalzahl enthält die Anzahl der vergangenen Sekunden ab dem 1. Januar 1970 00:00:00 GMT (Beginn
der Unix-Epoche). Die maximale Größe der Dezimalzahl beträgt 32 Bit.
Die Zeichen, die nicht formatiert werden sollen, müssen mit einem Backslash escapt werden (\D\a usw.).
Weiterhin müssen einfache Anführungszeichen verwendet werden, ansonsten wird \n nicht als n sondern als Zeilenumbruch
dargestellt.

Beispiele:

<?php
echo date('\D\a\t\u\m \u\n\d \U\h\r\z\e\i\t M l H\:i\:s');  //Ausgabe:
Datum und Uhrzeit Sep Monday 11:22:34

?>

<?php
echo date('\D\a\t\u\m \u\n\d \U\h\r\z\e\i\t Y M d l H\:i\:s',-494748388); //Ausgabe: Datum und Uhrzeit 1954 Apr 28
                                                                                                           // Wednesday 18:53:32
?>

<?php
echo date('\D\a\t\u\m \u\n\d \U\h\r\z\e\i\t Y M d l H\:i\:s',494748388); //Ausgabe:
Datum und Uhrzeit 1985 Sep 05
                                                                                                         // Thursday 08:06:28
?>

zugelassene Zeichen:
a= am oder pm
A= AM oder PM
B= Swatch-Internetzeit
d= Tag des Monats (zweistellig z.B. 03)
D= Tag der Woche mit drei Buchstaben (z.B. Mon)
F= Monat als ganzes Wort (z.B. December)
g= 12-Stunden-Format ohne führende 0
G= 24-Stunden-Format ohne führende 0
h= 12-Stunden-Format mit führender 0
H= 24-Stunden-Format mit führender 0
i= Minuten mit führender 0
I= Sommerzeit (1 ja, 0 nein)
l= ausgeschriebener Tag der Woche (z.B. Saturday)
L= Schaltjahr (1 ja, 0 nein)
m= Monat als Zahl mit führender 0
M= Monatsname mit drei Buchstaben
n= Monat als Zahl ohne führende 0
O= Zeitunterschied zur Greenwich Time GMT in Stunden
r= RFC 822-formatiertes Datum
s= Sekunden mit führender 0
S= Anhang der englischen Aufzählung für einen Monatstag (mit j empfohlen) jS
t= Anzahl der Tage des angegebenen Monats
T= Zeitzoneneinstellung des Rechners
U= Sekunden seit Beginn der Unix-Epoche = time()
w= numerischer Tag einer Woche (0 für Sonntag, 1 für Montag)
W= Wochennummer des Jahres ISO-8601
y= Jahreszah,l zweistellig
Y= Jahreszahl, vierstellig
z= der Tag eines Jahres
Z= Offset (Ausgleich) der Zeitzone in Sekunden

mktime()
mktime(Stunde, Minute, Sekunde, Monat, Tag, Jahr)
Die Funktion mktime() liefert den Unix-Timestamp.

<?php
$a=mktime(0,0,0,9,9,1985);
echo date('Y M d l H\:i\:s', $a); //Ausgabe:
1985 Sep 09 Monday 00:00:00

?>

time()
Die Funktion time() liefert den gegenwärtigen Timestamp.

strtotime()
strtotime(Datum,Timestamp)
Jedes beliebige Datum (englisches Format) wird in den entsprechenden Unix-Timestamp umgewandelt.
Fehlt der zweite Parameter, wird die aktuelle Systemzeit verwendet.

Beispiel:

<?php
$a=strtotime(yesterday,494748388);
$b=strtotime(tomorrow,494748388);
echo date('Y M d l H\:i\:s', $a);  //Ausgabe:
1985 Sep 04 Wednesday 00:00:00
echo "<br/>";
echo date('Y M d l H\:i\:s', $b); //Ausgabe:
1985 Sep 06 Friday 00:00:00

?>

getdate()
getdate(Timestamp)
Diese Funktion wandelt den Timestamp in ein zusammengesetztes Array um.

Elemente des Array's:
seconds Sekunden
minutes Minuten
hours Stunden
mday Tag des Monats
wday Tag der Woche
mon Monat
year Jahr
yday Tag des Jahres
weekday Tag der Woche
month Monat

Beispiel:

<?php
$a=getdate(
496250100);
echo $a['seconds'];
echo "<br/>";
echo $a['minutes'];
echo "<br/>";
echo $a['hours'];
echo "<br/>";
echo $a['mday'];
echo "<br/>";
echo $a['wday'];
echo "<br/>";
echo $a['mon'];
echo "<br/>";
echo $a['year'];
echo "<br/>";
echo $a['yday'];
echo "<br/>";
echo $a['weekday'];
echo "<br/>";
echo $a['month'];

?>

//Ausgabe:
0
15
17
22
0
9
1985
264
Sunday
September

Formatierte Ausgabe

strftime()
strftime(Format, Timestamp)

Beispiel:
unterstützte Formate auf einem Windows-System

<?php
echo strftime('%a %A %b %B %c %d %H %M %y %Z %Y %X %x %w %U %S %p %%',
496250100);
//Ausgabe:
Sun Sunday Sep September 09/22/85 17:15:00 22 17 15 85 Mitteleuropäische Sommerzeit 1985 17:15:00
//09/22/85 0 38 00 PM %

?>

Gültigkeit des Datums

checkdate()
checkdate( Monat, Tag, Jahr)
Suche nach Schaltjahren - (2,29,xxxx)
Beispiel:

<?php
echo checkdate(2,29,1984); //Ausgabe: 1( für True )

?>

Ermittlung des Alters (Beispielaufgabe)

<?php
$a= time();
$b=mktime(0,0,0,2,21,1969);
$c=($a-$b);
echo "Alter: " . floor($c/(365.25*24*60*60)); // Ausgabe: Alter: 38

?>

localtime()
localtime(Timestamp,0 oder 1 oder keine Angabe)
Diese Funktion liefert einen Array.
0 oder keine Angabe= regulärer, numerisch indizierter Array
1= assoziativer Array

Beispiel:

<?php
print_r (localtime(time(),0)); //Ausgabe:
Array ( [0] => 56 [1] => 13 [2] => 14 [3] => 5 [4] => 8 [5] => 107 [6] => 3
                                          // [7] => 247 [8] => 1 )

?>

<?php
print_r (localtime(time(),1)); //Ausgabe:
Array ( [tm_sec] => 59 [tm_min] => 17 [tm_hour] => 14 [tm_mday] => 5
                                           // [tm_mon] => 8 [tm_year] => 107 [tm_wday] => 3 [tm_yday] => 247 [tm_isdst] => 1 )

?>

tm_sec Sekunde
tm_min Minute
tm_hour Stunde
tm_mday Tag des Monats
tm_mon Monat des Jahres, beginnt bei 0 für Januar
tm_year Jahr seit 1900
tm_wday Tag der Woche
tm_yday Tag des Jahres
tm_isdst für das Datum ist die Sommerzeit zu berüchsichtigen

gettimeofday()
Zeitangabe als assoziatives Array

Beispiel:

<?php
print_r (gettimeofday()); //Ausgabe:
Array ( [sec] => 1189015854 [usec] => 971374 [minuteswest] => -120
                                    // [dsttime] => 1 )

?>

sec Sekunden
usec Mikrosekunden
minuteswest Minuten westlich von Greenwich
dsttime Art der Korrektur der Sommerzeit

Kalenderfunktionen

Gregorianischer Kalender
Julianischer Kalender
Julianisches Datum (Anzahl der Tage seit dem 1.1.4713 v.Chr.)
gregorianisches Datum 15. Oktober 1582 entspricht dem julianischem Datum 5. Oktober 1582

cal_info()
liefert Informationen über den angegebenen Kalender
0 Gregorianischer Kalender
1 Julianischer Kalender
2 Jüdischer Kalender
3 Kalender der französischen Revolution

Beispiele:

<?php
print_r(cal_info(0));

?>

//Ausgabe:
Array
(
[months] => Array
(
[1] => January
[2] => February
[3] => March
[4] => April
[5] => May
[6] => June
[7] => July
[8] => August
[9] => September
[10] => October
[11] => November
[12] => December
)

[abbrevmonths] => Array
(
[1] => Jan
[2] => Feb
[3] => Mar
[4] => Apr
[5] => May
[6] => Jun
[7] => Jul
[8] => Aug
[9] => Sep
[10] => Oct
[11] => Nov
[12] => Dec
)

[maxdaysinmonth] => 31
[calname] => Gregorian
[calsymbol] => CAL_GREGORIAN
)

<?php
print_r(cal_info(1));

?>

//Ausgabe:
Array
(
[months] => Array
(
[1] => January
[2] => February
[3] => March
[4] => April
[5] => May
[6] => June
[7] => July
[8] => August
[9] => September
[10] => October
[11] => November
[12] => December
)

[abbrevmonths] => Array
(
[1] => Jan
[2] => Feb
[3] => Mar
[4] => Apr
[5] => May
[6] => Jun
[7] => Jul
[8] => Aug
[9] => Sep
[10] => Oct
[11] => Nov
[12] => Dec
)

[maxdaysinmonth] => 31
[calname] => Julian
[calsymbol] => CAL_JULIAN
)

<?php
print_r(cal_info(2));

?>

//Ausgabe:
Array
(
[months] => Array
(
[1] => Tishri
[2] => Heshvan
[3] => Kislev
[4] => Tevet
[5] => Shevat
[6] => AdarI
[7] => AdarII
[8] => Nisan
[9] => Iyyar
[10] => Sivan
[11] => Tammuz
[12] => Av
[13] => Elul
)

[abbrevmonths] => Array
(
[1] => Tishri
[2] => Heshvan
[3] => Kislev
[4] => Tevet
[5] => Shevat
[6] => AdarI
[7] => AdarII
[8] => Nisan
[9] => Iyyar
[10] => Sivan
[11] => Tammuz
[12] => Av
[13] => Elul
)

[maxdaysinmonth] => 30
[calname] => Jewish
[calsymbol] => CAL_JEWISH
)

<?php
print_r(cal_info(3));

?>

//Ausgabe:
Array
(
[months] => Array
(
[1] => Vendemiaire
[2] => Brumaire
[3] => Frimaire
[4] => Nivose
[5] => Pluviose
[6] => Ventose
[7] => Germinal
[8] => Floreal
[9] => Prairial
[10] => Messidor
[11] => Thermidor
[12] => Fructidor
[13] => Extra
)

[abbrevmonths] => Array
(
[1] => Vendemiaire
[2] => Brumaire
[3] => Frimaire
[4] => Nivose
[5] => Pluviose
[6] => Ventose
[7] => Germinal
[8] => Floreal
[9] => Prairial
[10] => Messidor
[11] => Thermidor
[12] => Fructidor
[13] => Extra
)

[maxdaysinmonth] => 30
[calname] => French
[calsymbol] => CAL_FRENCH
)

gregoriantojd()
gregoriantojd(Monat, Tag, Jahr)
Datum gregorianischer Kalender in einen Tag julianischem Datum

Beispiel:

<?php
echo gregoriantojd(9,20,1985); //Ausgabe:
2446329

?>

jdtojulian()
Tag im julianischen Datum in Datum im julianischen Kalender

Beispiel:

<?php
echo jdtojulian(2446329);  //Ausgabe:
9/7/1985

?>

jdtojewish()
Tag im julianischen Datum in Datum im jüdischen Kalender

Beispiel:

<?php
echo jdtojewish(2446329); //Ausgabe:
1/5/5746

?>

jewishtojd()
jewishtojd(Monat, Tag, Jahr)
Datum im jüdischen Kalender in Tag im julianischen Datum

Beispiel:

<?php
echo jewishtojd(1,5,5746); //Ausgabe:
2446329

?>

jdtounix()
Tag im julianischen Datum in Unix-Timestamp

Beispiel:

<?php
echo jdtounix(2446329); //Ausgabe:
496022400

?>

unixtojd()
Unix-Timestamp in Tag im julianischen Datum

Beispiel:

<?php
echo unixtojd(496022400); //Ausgabe:
2446329

?>

date()

date(Format, Timestamp)

Beispiel:

<?php
echo date('d F Y',496022400); //Ausgabe:
20 September 1985

?>

Übungsaufgabe: Heute ist der 5. September 2007. Dieses Datum entspricht welchem Datum im jüdischen Kalender?

<?php
$a=time();
$b=unixtojd($a);
$c=jdtojewish($b);
echo $c;  //Ausgabe:
13/22/5767  Monat/Tag/Jahr  Monat=13=Elul

?>

HTTP-Funktionen

Vor der Ausführung der Applikation werden Informationen an den Clientbrowser gesendet.
Problem Browsercaching, es müssen immer neue HTML-Seiten erzeugt werden

header()
header(string, replace, response)
replace (optional), bei dem Wert true ersetzt der jetzige einen vorherigen Hearder
response (optional), spezifiziert den HTTP-Respons-Code

Beispiele:

redirect - Umleitung

<?php
header("Location:http://www.christophburghardt.com");
exit; // nachfolgender Code wird nicht ausgeführt

?>

<?php
header("http://www.christoph-burghardt.com/5.php 404 Not Found");

?>

Cachen von dynamischen Inhalten durch den Browser oder Proxy (Programm zwischen Server und Client) verhindern

<?php
header ("Expires: Sun, 9 Sep  2007 06:00:00 GMT"); // Das Ablaufdatum wird auf die Vergangenheit gestellt.
header("Last-Modified:". gmdate()); // Das Datum von den letzten Änderungen wird auf "jetzt" gestellt.
header("Cache-Control: no-store, no-cache, must revalidate");
header("Cache-Control: post-check=0, pre-check=0, false);
header("Pragma: no-cache");
header("Content-type: text/html, charset=UTF-8");

?>

weitere Header-Anweisungen

header("Content-type: image/jpeg");
header("Content-type: image/ping");
header("Content-type: image/gif");
header("Content-type: application/x-shockwave-flash");

header_sent()
prüft ob der Header gesendet wurde

setcookie()
setcookie(cname)
sendet auf den Client ein Cookie

Beispiel:

<?php

$AktuellesDatum = date("d.m.Y H:i:s");
$Gueltigkeit = time()+86400;
setcookie("ErsterBesuch", $AktuellesDatum, $Gueltigkeit);

?>

Cookie auslesen

<?php

echo$_COOKIE['ErsterBesuch'];

?>


print_r($_COOKIE)
prüft ob das Cookie gesetzt wurde


Dateien und Verzeichnisse

disk_free_space()
liefert den freien Speicherplatz

Beispiel:

<?php
echo disk_free_space("E:"); //Ausgabe:
29344419840 (Angabe in Bytes)

?>

disk_total_space()
liefert den gesamten Speicherplatz

Beispiel:

<?php
echo disk_total_space("E:"); //Ausgabe:
163925979136 (Angabe in Bytes)

?>

file_exists()
file_exists(string filename)
prüft ob eine Datei schon existiert
Die zu prüfende Datei muss sich in dem Dateisystem des Servers befinden.

Beispiel:

<?php

$filename="xampp";
if(file_exists($filename))
{
echo "Datei existiert";
} else {
echo "Datei existiert nicht";
}

?>

is_writeable()
prüft ob eine Datei schon existiert und schreibgeschützt ist
Die zu prüfende Datei muss sich in dem Dateisystem des Servers befinden.

is_readable()
prüft ob eine Datei schon existiert und mit dem Lesezugriff geöffnet werden kann
Die zu prüfende Datei muss sich in dem Dateisystem des Servers befinden.

is_executable()
prüft ob eine Datei schon existiert und ausführbar ist
Die zu prüfende Datei muss sich in dem Dateisystem des Servers befinden.

clearstatcache()
clearstatcache(void)
Diese Funktion löscht den gesamten Statuscache.

stat()
liefert einen Array mit Informationen über Dateien

Beispiel:

<?php
print_r(stat(xampp));

?>

//Ausgabe:
Array
(
[0] => 2  (Gerätenummer)
[1] => 0 
[2] => 16895
[3] => 1
[4] => 0
[5] => 0
[6] => 2
[7] => 12288
[8] => 1187601385
[9] => 1187601385
[10] => 1187601384
[11] => -1
[12] => -1
[dev] => 2
[ino] => 0
[mode] => 16895
[nlink] => 1
[uid] => 0
[gid] => 0
[rdev] => 2
[size] => 12288
[atime] => 1187601385  (Zeitpunkt des letzten Zugriffs)
[mtime] => 1187601385  (Zeitpunkt der letzten Änderung)
[ctime] => 1187601384
[blksize] => -1
[blocks] => -1
)

fileatime()
Zeitpunkt des letzten Zugriffs auf die Datei (Unix-Timestamp)

filemtime()
Zeitpunkt der letzten Änderung der Datei (Unix-Timestamp)

filectime()
Zeitpunkt der letzten Änderung von Inode-Informationen der Datei
Inode-Informationen = Eigentümer, Zugriffsrechte, Gruppen und weitere Metadaten

fileowner()
liefert die Benutzer-ID des Dateieigentümers

fileperms()
liefert die Zugriffsrechte auf eine Datei als eine Oktazahl
Die ersten beiden Ziffern stehen für den Dateityp. Die restlichen drei Ziffern stehen für die Zugriffsrechte.
von den restlichen drei die erste Zahl = Zugriffsrechte des Dateieigentümers
von den restlichen drei die zweite Zahl = Zugriffsrechte der Benutzer, welche zur Benutzergruppe des Eigentümers gehören
von den restlichen drei die dritte Zahl = Zugriffsrechte aller übrigen Benutzer
Recht zur Ausführung der Datei = 1
Schreibrecht der Datei =2
Leserecht der Datei = 4
Jede dieser Zahlen bildet eine Summe der verschiedenen Zugriffsrechte.

Beispiel:

<?php
echo fileperms(xampp); //Ausgabe:
16895

?>

filesize()
liefert die Größe einer Datei in Bytes

basename()
extrahiert den Dateinamen aus der vollständigen Pfadangabe

Beispiel:

<?php
echo basename('C:\xampp\htdocs\xampp\img\head-for.gif'); //Ausgabe:
head-for.gif

?>

dirname()
restlicher Verzeichnispfad

Beispiel:

<?php
echo dirname('C:\xampp\htdocs\xampp\img\head-for.gif'); //Ausgabe:
C:\xampp\htdocs\xampp\img

?>

pathinfo()
assoziativer Array

Beispiel:

<?php
print_r(pathinfo('C:\xampp\htdocs\xampp\img\head-for.gif'));

?>
//Ausgabe:
Array
(
[dirname] => C:\xampp\htdocs\xampp\img
[basename] => head-for.gif
[extension] => gif
[filename] => head-for
)

filetype()
Dateityp wird ermittelt

Beispiele:

<?php
echo filetype('C:\xampp\htdocs\xampp'); //Ausgabe: dir (Verzeichnis)

?>

<?php
echo filetype('C:\xampp\htdocs\xampp\img\head-for.gif'); //Ausgabe: file (Datei)

?>

is_dir()
Ist es ein Verzeichnis?

Beispiel:

<?php
if(is_dir('head-for.gif')){echo "True";}else{echo "False";} //Ausgabe: False

?>


is_file()
Ist es eine Datei?

Beispiel:

<?php
if(is_file('head-for.gif')){echo "True";}else{echo "False";} //Ausgabe: True

?>

is_link()
Ist es ein symbolischer Link?    symbolischer Link = Verknüpfung in einem Dateisystem

Beispiel:

<?php
if(is_link('head-for.gif')){echo "True";}else{echo "False";} //Ausgabe: False

?>

rename()
rename(oldname, newname)
Rechte eines Superusers erforderlich,
Dateiverschiebung innerhalb der Verzeichnisstruktur möglich

Beispiel:

<?php
rename('head-for.gif', 'superuser.gif'); // es funktioniert!

?>

chmod()
chmod(filename, mode)
Zugriffsrechte ändern
mode besteht aus 3 oktalen Ziffern
erste Ziffer: Zugriffsrechte des Dateieigentümers
zweite Ziffer: Zugriffsrechte des Benutzers gleicher Benutzergruppe wie der Eigentümer
dritte Ziffer: Zugriffsrechte aller übrigen Benutzer
Recht zur Ausführung 1
Schreibrecht 2
Leserecht 4
Einzelrechte werden addiert z.B. 7= 1+2+4 (Ausführung, Schreibrecht, Leserecht)
vorangestellte 0, damit die Oktalzahl erkannt wird

Beispiel:

<?php
chmod('5.php','0111'); //Änderungen können nicht mehr gespeichert werden

?>

chown()
chown(filename,user)
ändert den Eigentümer der Datei
Parameter user enthält den Namen (ID identification) des Eigentümers
nur für Superuser

Beispiel:

<?php
chown('5.php','567');
echo fileowner('5.php'); //Ausgabe:0 (weil 567 kein registrierter Benutzer ist)

?>

touch()
touch(filename,time,atime)
setzt die Zugriffs- und Modifizierungszeit
time - Zeitpunkt der letzten Dateiänderung
atime - letzter Zugriff

Dateien manipulieren
.aktuelles Verzeichnis ..Parentverzeichnis  /Rootverzeichnis

copy()
copy(string source, string dest)

Beispiel:

C:/xampp/htdocs/5.php

<?php
copy('5.php','C:/xampp/htdocs/xampp/5.php'); // Kopie von 5.php nach C:/xampp/htdocs/xampp

?>

<?php
copy('5.php','../5.php'); // Kopie von 5.php nach C:/xampp

?>

unlink()
unlink(filename)
Datei löschen

Beispiel:

<?php
unlink('C:/xampp/htdocs/xampp/5.php');

?>

rmdir()
rmdir(filename)
Verzeichnis (Ordner) löschen

Dateien öffnen

fopen()
fopen(filename,mode,include_path,zcontext)
öffnet eine Datei oder URL
liefert einen resource-Zeiger (Dateihandle) als Rückgabewert
Die Funktion fgets() liest  die erste Zeile von der Datei, auf welche der Zeiger verweist.
mode = Zugriffstyp auf die Datei

r  Öffnet die Datei nur zum Lesen und positioniert den Dateizeiger auf den Anfang der Datei.

r+  Öffnet die Datei zum Lesen und Schreiben und setzt den Dateizeiger auf den Anfang der Datei.

w  Öffnet die Datei nur zum Schreiben und setzt den Dateizeiger auf den Anfang der Datei sowie die Länge der Datei auf
0 Byte. Wenn die Datei nicht existiert wird versucht sie anzulegen.

w+  Öffnet die Datei zum Lesen und Schreiben und setzt den Dateizeiger auf den Anfang der Datei sowie die Länge der Datei auf 0 Byte. Wenn die Datei nicht existiert, wird versucht sie anzulegen.

a  Öffnet die Datei nur zum Schreiben. Positioniert den Dateizeiger auf das Ende der Datei. Wenn die Datei nicht existiert, wird versucht sie anzulegen.

a+  Öffnet die Datei zum Lesen und Schreiben. Positioniert den Dateizeiger auf das Ende der Datei. Wenn die Datei nicht existiert, wird versucht sie anzulegen.

Beispiel:

<?php
$a=fopen('http://www.christophburghardt.com','r');
echo fgets($a); //Ausgabe: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"

?>

In Dateien schreiben

fwrite()
fwrite(Dateihandle,string,length)
optionaler Parameter length Das Schreiben wird nach length Bytes beendet.

Beispiel:

<?php
$a=fopen('9.php','w+');
fwrite($a,'Dieses wird in die Datei geschrieben.'); // Die Datei 9.php wird neu im Verzeichnis htdocs angelegt.

?>

Schließen einer Datei

fclose()
fclose(Dateihandle)
nicht notwendig aber empfohlen

Lesen aus einer Datei

filesize()
filesize(filename)
liefert die Dateigröße in Bytes

Beispiel:

<?php
echo filesize('index.htm'); //Ausgabe: 79699

?>

fgetc()
fgetc(Dateihandle)
Diese Funktion liefert einen String, der ein einzelnes Zeichen von der aktuellen Position des Dateizeigers handle enthält.

Beispiel:

<?php
$a=fopen('http://www.christophburghardt.com','r');
echo fgetc($a); //Ausgabe: <

?>

fgets()
fgets(Dateihandle,length)
Diese Funktion liefert einen String, der eine Zeile von der aktuellen Position des Dateizeigers handle enthält.

Beispiel:

<?php
$a=fopen('http://www.christophburghardt.com','r');
echo fgets($a); //Ausgabe: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"

?>

fgetss()
fgetss(Dateihandle,length,allowed)
funktioniert wie fgets(), filtert aber alle HTML- und PHP-Tags heraus

Lesen einer bestimmten Anzahl von Bytes

fread()
fread(Dateihandle,length)
gelesen werden entweder length Bytes oder bis zum Dateiende (EOF-End of File)

Beispiel:

<?php
$a=fopen('http://www.christophburghardt.com','r');
echo fread($a,10); //Ausgabe: <!DOCTYPE

?>

Lesen der kompletten Datei

readfile()
readfile(filename,include_path)
Datei braucht zum Lesen weder geöffnet noch geschlossen werden
Parameter include_path auf 1 gesetzt bedeutet, es wird auch in dem Verzeichnis nach der Datei gesucht

include_path
(einbezogener Pfad)
Es wird ein Verzeichnis angegeben, in denen Funktionen nach Dateien suchen.
Beispiel Unix include_path
include_path=.:/home/httpd/php-lib
Beispiel Windows include_path
include_path=".;c:\www\phplib"

Beispiel:

<?php
echo readfile('index.htm'); // es wird der Inhalt im  Browser angezeigt und die Anzahl der Bytes

?>

fpassthru()
fpassthru(Dateihandle)
entspricht der Funktion readfile(), es ist aber der Dateizeiger erforderlich

Beispiel:

<?php
$a=fopen('index.htm','r');
fpassthru($a);

?>

rewind()
rewind(Dateihandle)
setzt den Dateizeiger an den Anfang

file()
file(filename,include_path)
funktioniert wie readfile, Inhalt wird aber als Array zurückgegeben
jedes Element des Array's enthält eine Zeile der Datei

<?php
$a=file('http://www.iqsh.de/');
print_r($a);

?>

Navigation innerhalb der Datei

ftell()
ftell(Dateihandle)
liefert die aktuelle Position des Datei-Zeigers

Beispiel:

<?php
$a=fopen('http://www.christophburghardt.com','r');
echo ftell($a); //Ausgabe: 0

?>

rewind()
rewind(Dateihandle)
Mit dieser Funktion setzt man den Dateizeiger auf das erste Byte der Datei.

Beispiel:

<?php
$a=fopen('http://www.christophburghardt.com','r');
echo rewind($a); //Ausgabe: 0

?>

fseek()
fseek(Dateihandle,offset)
verschiebt den Datei-Zeiger auf offset-Bytes vom Anfang

Beispiel:

<?php
$a=fopen('http://www.christophburghardt.com','r');
fseek($a,795);
echo fgets($a); //Ausgabe: nk rel="shortcut icon" href="amd.ico" title="icon" >

?>

Verriegelung einer Datei

flock()
flock(Dateihandle,operation)
Parameter operation
1 Leseverriegelung
2 Schreibverriegelung
3 Verriegelung freigeben
4 andere Zugriffe während der Verriegelung erlauben

Beispiel:

<?php
$a=fopen('http://www.christophburghardt.com','r');
flock($a,2);

?>

Verzeichnisse

mkdir()
mkdir(path,mode)
erstellt ein Verzeichnis
mode definiert die Zugriffsrechte - siehe Funktion chmod()
ohne Angabe von mode 0777

Beispiel:

<?php
mkdir(christoph);

?>

chdir()
chdir(dirname)
Verzeichnis wechseln

getcwd()
gibt das aktuelle Verzeichnis zurück

Beispiel:

<?php
echo getcwd() //Ausgabe: C:\xampp\htdocs

?>

rmdir()
rmdir(dirname)
Verzeichnis löschen
das zu löschende Verzeichnis muss leer sein

Beispiel:

<?php
rmdir(christoph);

?>

opendir()
öffnet ein Verzeichnis (Ordner) und gibt einen Verzeichniszeiger zurück

readdir()
readdir(Verzeichniszeiger)
damit liest man die Dateinamen aus dem geöffneten Verzeichnis aus

rewinddir()
rewinddir(Verzeiniszeiger)
setzt den Verzeichniszeiger an die Anfangsposition

closedir()
closedir(Verzeichniszeiger)
schließt ein Verzeichnis

Beispiel:
einen Ordner auslesen

<?php
$a=opendir('E:');
while($b=readdir($a)) echo $b."<br/>"; //Schleife - Ordnerinhalt
closedir($a);

?>

//Ausgabe:
$RECYCLE.BIN
100KM028
Desktop 20.07.2007
Desktop 25.07.2007
DVD Dominic
KK_PDF_1992856_christoph-burghardt_com.pdf
Konten.txt
Lütjensee 18.07.2007
Samsung 40GB
Samsung 80GB
Schule
Sex
System Volume Information

dir()
dir(dirname)
Dies ist ein pseudo-objektorientierter Mechanismus zum Lesen eines Verzeichnisses.

Beispiel:

<?php
$a=dir('C:');
echo $a->path."<br/>"; //Dateipfad
echo $a->handle."<br/>"; //Verzeichnisseiger
while($b=$a->read()) echo $b."<br/>"; //Schleife - Ordnerinhalt
$a->close();

?>

//Ausgabe:
C:
Resource id #2
$Recycle.Bin
AAMSSTP
autoexec.bat
BOOKS
Boot
bootmgr
BOOTSECT.BAK
config.sys
Documents and Settings
Dokumente und Einstellungen
pagefile.sys
Program Files
ProgramData
Programme
System Volume Information
TB.log
Users
Windows
xampp

Sicherheit
Verlagerung von Dateien aus dem Webordner (htdoc)
 
Beispiel:

<?php
$a=fopen('../texts/9.txt','r');
echo fread($a,1000);

?>

HTML Formular

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>
<title> HTML Formular </title>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
</head>

<body>
<form name="myform" action="process.php" method="POST" target="_blank" enctype="multipart/form-data">
Name: <br/>
<input type="text" size="20" name="name" > <br/> <br/>
Passwort: <br/>
<input type="password" size="20" name="pass" > <br/> <br/>
Beschreibung: <br/>
<textarea rows="10" cols="50" name="text" >
</textarea> <br/> <br/>
Land: <br/>
<select name="land">
<option value="1" selected> Deutschland </option>
<option value="2"> England </option>
<option value="3"> Frankreich </option>
</select> <br/> <br/>
Geschlecht: <br/>
<input type="radio" name="geschlecht" value="1"> weiblich <br/>
<input type="radio" name="geschlecht" value="2"> männlich <br/> <br/>
Hobbies: <br/>
<input type="checkbox" name="hobby"> Schwimmen <br/>
<input type="checkbox" name="hobby"> Wandern <br/>
<input type="checkbox" name="hobby"> Fernsehen <br/> <br/>
<input type="hidden" name="id" value="avcfg$ghjsd">
<input type="file" size="20" name="file"> <br/> <br/>
<input type="submit" value="Absenden">
<input type="reset" value="Zurücksetzen">
</form>
</body>
</html>

//Ausgabe:

Formular


<input type="text">
Eingabefelder
Attribute: name bzw. id, style bzw. class, size, maxlength, value, disabled, readonly

Beispiel:

<?php
echo' <input type="text" name="Postleitzahl" style= "width:300px; height:30px"  maxlength="5">';

?>

<textarea>
Textfelder
Attribute: name bzw. id, style bzw. class, cols, rows, disabled, readonly, wrap (Zeilenumbruch)

Beispiel:

<?php
echo '<textarea name="textfeld" cols="60" rows="40" textarea> </textarea>';

?>

<select name="land">
<option value="1" selected> Deutschland </option>
<option value="2"> England </option>
<option value="3"> Frankreich </option>
</select>
Auswahlfelder
Attribute: name bzw. id, style bzw. class, size, multiple, value

<input type="radio" name="geschlecht" value="1"> weiblich <br/>
<input type="radio" name="geschlecht" value="2"> männlich
Radiobuttons
Es kann nur ein Element der Gruppe ausgewählt werden.
Attribute: name, value, checked (Vorauswahl)

<input type="checkbox" name="hobby"> Schwimmen <br/>
<input type="checkbox" name="hobby"> Wandern <br/>
<input type="checkbox" name="hobby"> Fernsehen
Checkboxen
Es können mehrere Elemente der Gruppe ausgewählt werden.
Attribute: name, value, checked

<input type="hidden" name="id" value="avcfg$ghjsd">
Informationen über nicht ausgewählte Elemente werden an den Server übermittelt.

<input type="password" name="password" value="xx">
Passwortfelder
es werden 2 Formulare definiert a) sichtbare Anzeige b) versteckte Felder

Beispiel:

<html>
<head>
<title> HTML Formular </title>
<script language="JavaScript">
function submit_form()
{
document. login.username.value=document.temp_login.username.value;
document. login.password.value=document.temp_login.password.value;
document.login.submit();
}
</script>
</head>
<body>
<form name="temp_login" action="">
<input type="text" name="username" size="20">
<br/>
<input type="password"