Teil von  SELFPHP   Teil von  Praxisbuch  Teil von  Datentypen
Letztes Update: 16.08.2005 17:53:45


Navigation

Seite News *

Seite Startseite
Seite Über SELFPHP
Seite Werbung
Seite Kontakt
Seite Forum *
Seite Download *
Seite SELFPHP Banner *
Seite SELFPHP in Buchform
Seite Newsletter *
Seite Impressum

 
* Link führt ins Internet


Anbieterverzeichnis
Informieren Sie sich über die Unternehmen in unserem Anbieterverzeichnis!  

 


SELFPHP Forum
Fragen rund um die Themen PHP? In über 79.000 Beiträgen finden Sie sicher die passende Antwort!  


Newsletter
Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 



 

Datentypen bestimmen





Einsatz von var_dump()

Um beispielsweise den Typ und den Wert eines bestimmten Ausdrucks, sog Expression zu überprüfen, können Sie var_dump() einsetzen.


Beispiel



<pre>
<?php
$personen 
= array(array('Matthias','Kannengiesser',29),
            array(
'Caroline','Kannengiesser',25),
            array(
'Gülten','Kannengiesser'59,
                 array(
'Eltern','Mutter')));
var_dump($personen);
?>
</pre>




Ausgabe



array(3) {
  [0]=>
  array(3) {
    [0]=>
    string(8) "Matthias"
    [1]=>
    string(13) "Kannengiesser"
    [2]=>
    int(29)
  }
  [1]=>
  array(3) {
    [0]=>
    string(8) "Caroline"
    [1]=>
    string(13) "Kannengiesser"
    [2]=>
    int(25)
  }
  [2]=>
  array(4) {
    [0]=>
    string(6) "Gülten"
    [1]=>
    string(13) "Kannengiesser"
    [2]=>
    int(59)
    [3]=>
    array(2) {
      [0]=>
      string(6) "Eltern"
      [1]=>
      string(6) "Mutter"
    }
  }
}



Diese Funktion hat die Aufgabe Informationen über Typ und Wert des Parameter zurück zu geben. Arrays und Objekte werden rekursiv, von innen nach aussen, durchlaufen und mit entsprechender Einrückung dargestellt.

Sollten Sie zur Fehlersuche lediglich eine lesbare Darstellung eines Typs benötigen, steht Ihnen hierfür gettype() zur Verfügung.


Einsatz von gettype()



Beispiel



<?php
$vorname 
"Caroline";
$alter 25;

// Ausgabe - string
echo gettype($vorname);
// Ausgabe - integer
echo gettype($alter);
?>



Die Funktion gibt die bereits bekannte Typbezeichner als Zeichenkette zurück. Konnte der Typ nicht erkannt werden, so wird die Zeichenkette unknown type erzeugt.

Achtung: Um den Typ zu prüfen, sollten Sie nicht gettype() verwenden. Stattdessen sollten Sie die is_type Funktionen verwenden. Diese finden sie weiter unten im Abschnitt Datentypen bestimmen.



Bei logischen Ausdrücken ist die Verwendung von gettype() zu umständlich. Sie können daher eine ganze Reihe von is_type-Funktionen einsetzen, die True (1) oder False (0) zurückgeben.


FunktionBeschreibung
is_long(string var)
is_integer(string var)
is_int(string var)
Ermittelt, ob es sich um einen Ausdruck vom Typ integer handelt. Gibt 1 zurück, wenn die Variable vom Typ integer ist.
is_double(string var)
is_real(string var)
is_float(string var)
Ermittelt, ob es sich um einen Ausdruck vom Typ double bzw. float handelt. Gibt 1 zurück, wenn die Variable vom Typ double oder float ist.
is_string(string var)Ermittelt, ob es sich um einen Ausdruck vom Typ string handelt. Gibt 1 zurück, wenn die Variable vom Typ string ist.
is_numeric(string var)Ermittelt, ob es sich um einen numerischen Typ (integer, double) handelt. Gibt 1 zurück, wenn die Variable vom Typ integer oder double ist.
is_bool(string var)Ermittelt, ob es sich um einen Ausdruck vom Typ boolean handelt. Gibt 1 zurück, wenn die Variable vom Typ boolean ist.
is_array(string var)Ermittelt, ob es sich um einen Ausdruck vom Typ array handelt. Gibt 1 zurück, wenn die Variable vom Typ array ist.
is_object(string var)Ermittelt, ob es sich um einen Ausdruck vom Typ object bzw. Objektvariable handelt. Gibt 1 zurück, wenn die Variable vom Typ object ist.
is_nullErmittelt, ob es sich um einen Ausdruck vom Typ null handelt. Gibt 1 zurück, wenn die Variable vom Typ null ist.
is_resourceErmittelt, ob es sich um einen Ausdruck vom Typ resource handelt. Gibt 1 zurück, wenn die Variable vom Typ resource ist.
is_scalarErmittelt, ob es sich um einen Ausdruck vom Typ integer, float, string oder boolean handelt. Gibt 1 zurück, wenn die Variable vom Typ integer, float, string oder boolean ist.



Beispiel



<?php
$preis 
"9.99";
// Aushabe - Es ist ein String
if (is_string($preis)) {
    echo 
"Es ist ein String";
} else {
    echo 
"Kein String";
}
?>




Beispiel



<?php
$signal 
FALSE;
// Aushabe - Ist bool
if (is_bool($signal)) {
    echo 
"Ist bool";
} else {
    echo 
"Kein bool";
}
?>



Allerdings verhalten sich die Funktionen nicht alle einheitlich. So akzeptiert die Funktion is_numeric() auch numerische Werte, die in Anführungszeichen, also als Strings, übergeben werden. Der Wert darf lediglich keine Buchstaben enthalten.


Beispiel



<?php
$wert 
"9.99";
// Aushabe - Ist eine Zahl
if (is_numeric($wert)) {
    echo 
"Ist eine Zahl";
} else {
    echo 
"Ist keine Zahl";
}
?>



Wenn sie die Umwandlung in einen bestimmten Typ erzwingen wollen, erreichen Sie dies entweder durch cast-Ausdrücke oder durch Gebrauch der Funktion settype().

Beachten Sie, dass sich eine Variable in bestimmten Situationen unterschiedlich verhalten kann, abhängig vom Typ dem die Variable zum Zeitpunkt ihrer Verarbeitung entspricht.


 


Typ-Umwandlung
 




 sponsored by

Host Europe


HighText iBusiness


Host Europe




© 2001-2006 E-Mail SELFPHP - Damir Enseleit, info@selfphp.deImpressumKontakt
© 2005-2006 E-Mail PHP5 Praxisbuch - Matthias Kannengiesser, m.kannengiesser@selfphp.de