Telefon-Class von Martin Scheiben, SCHEIBEN DESIGN - September, 2004
Copyright (c) by Martin Scheiben, Herisau.
Diese Class darf in unveränderter Form frei verwendet werden.
JEDE HAFTUNG WIRD AUSGESCHLOSSEN!

 Zielpublikum dieser Class:

Durchschnittliche PHP Anwender mit etwas Grunderfahrung.

Bedienung:

Einbinden mit:

include("class.telefonnummer.testen.php");
$PhoneTester = new PhoneTester(); // Class starten

Die Ausgabe einer aufbereiteten Telefonnummer erfolgt dann mit: <?php echo $PhoneTester->PhoneOutput($Telefonvariable)?>
($Telefonvariable soll natürlich Ihre gewünschte Rufnumer beinhalten ...)

Sie können aber noch einige andere Werte setzen.

$PhoneTester->setNoError();

(Optional)
Wird diese Zeile eingegeben, wird bei einem Fehler NICHT abgebrochen und KEINE Fehlermeldung zurückgegeben. Die Array wird dann auch bei einer fehlerhaften Eingabe gefüllt.

$PhoneTester->setNumAnz(5); (Optional) Eingabe minimal nötiger Zahlen 
Wird der Wert nicht gesetzt, gelten 5 Zahlen.
Leerzeichen, Klammern, etc. werden nicht gewertet.Wird der Wert unterschritten, bekommt man eine Fehlermeldung zurück.
$PhoneTester->setDIN5008(); (Optional) Versucht die Ausgabe nach DIN5008 zu gestalten.
Lassen Sie diesen Parameter weg wenn Sie eine lesbare Version bevorzugen. Die DIN5008 ist nicht besonders Augenfreundlich!
$PhoneTester->setArray();

(Optional) Ausgabe erfolgt als Array mit einigen Zusatzangaben.

Folgende Werte können Sie abfragen:

$Rufnummer["DIN5008"]
$Rufnummer["Rufnummer"]
$Rufnummer["NameEnglisch"]
$Rufnummer["NameFranzoesisch"]
$Rufnummer["NameItalienisch"]
$Rufnummer["Laendercode"]
$Rufnummer["LaengeNR"]
$Rufnummer["Land"]
$Rufnummer["Landvorwahl"]
$Rufnummer["OrtVorwahl"]
$Rufnummer["Teilnehmer"]
$Rufnummer["Durchwahl"]
$Rufnummer["Laendercode"]
$Rufnummer["Typ"]
$Rufnummer["ERROR"]

$PhoneTester->setLand("schweiz"); (Optional) Ist keine Länderkennung angegeben, kann die Vorwahl vielleicht mit Hilfe den Land-Namens ermittelt werden. Gesucht wird in Deutscher, Französischer, Englischer und Italienischer sprache. (wenn diese im Script vorhanden sind). sowie im Ländercode. Gross-Kleinschreibung wird ignoriert.
Bei diesem Beispiel würde "schweiz" gefunden und als Länderkennung eingefügt werden.

Man kann eine Rufnummer  z.B. so formatieren:

include("class.telefonnummer_testen.php");
$PhoneTester = new PhoneTester();
echo $PhoneTester->PhoneOutput("0041 12 1234 5678-9"); // Rufnummer Ausgeben

Als Ergebnis bekäme man +41 (012) 12 34 56 78-9 

oder zusammen mit $PhoneTester->setDIN5008();
gäbe es +41 12 12345678-9

Und wer was Eigenes mittels Array mag: (Beispiel)

include("class.telefonnummer.testen.php");
$setTelefon = "0041 077 1234 5678-9"; // Rufnummer
$PhoneTester = new PhoneTester(); // Klasse bereitstellen
$PhoneTester->setNumAnz(7); // Eingabe minimal erlaubter Zahlen
$PhoneTester->setArray(); // Ausgabe als Array gewünscht
$PhoneTester->setLand("schweiz"); // Das Land könnte z.B. von einem Pulldownmenü übermittelt werden

$Rufnummer = $PhoneTester->PhoneOutput($setTelefon); // Array füllen
echo $Rufnummer["NameEnglisch"] . " *** " ; // Land in englisch ausgeben
echo $Rufnummer["OrtVorwahl"] . "/" . $Rufnummer["Teilnehmer"]

Ausgabe wäre:

Switzerland *** 077/12345678

Tipp:
Manchmal ist es einfach nicht möglich, aus einer eingegebenen Telefonnummer schlau zu werden.
Das Tool gibt in dem Fall die Nummer so gut wie möglich zurück, zusammen mit einer Warnmeldung.
Diese kann mit 

echo $PhoneTester->WarnungenAusgeben('') abgerufen werden.