PHP 4.3

2.5 Typkonvertierung von Variablen

PHP arbeitet mit der automatischen Typkonvertierung von Werten. So muss einer Variablen vor der ersten Verwendung kein ausdrücklicher Typ zugewiesen werden, da PHP den Typ ihres Wertes aus dem Zusammenhang, in dem diese verwendet wird, selbst bestimmt.

Zusammenfassung der Datentypen in PHP:

$v = "Apfel";  //Der Wert von $v ist ein string
$v = 4711;  // jetzt ist der Wert von $v ein int

Wenn man aber darauf angewiesen ist, mit einem bestimmten Typ zu arbeiten, kann man Werten auch explizit Typen zuweisen und somit einen Datentyp erzwingen.

Typkonvertierung:

<?php

  $item = (int) "100Laptop";
  echo $item; 

?>

Hier wird auf "100Laptop" die Typumwandlung (int) angewandt. Das Ergebnis ist ein Integer, und dieser wird dann $item zugewiesen.

Browserausgabe:

100

PHP stellt eingebaute Funktionen zur Verfügung, mit denen man einen Wert auf einen bestimmten Typ testen kann. Da PHP die Typen auch automatisch umwandelt, dient die Funktion gettype() dazu, den gerade von PHP intern genutzten Datentyp festzustellen.

Neben der Verwendung der Funktion gettype() möchten wir Ihnen im folgenden Beispiel auch zeigen, wie HTML-Tags in PHP integriert werden können. Der Vorteil ist bei dieser Vorgehensweise, dass Sie den Abschnitt Ihres PHP-Skripts nicht beenden und im Anschluss wieder neu beginnen müssen. Als Beispiel soll hier ein Zeilenumbruch <br> dienen.

Beachten Sie, dass aus Sicht des PHP-Skripts, HTML-Tags Strings sind und deshalb immer in Form einer echo-Ausgabe realisiert werden. Somit befinden sich in einem PHP-Skript die HTML-Tags immer in Anführungszeichen.

Hier wird mit Hilfe der gettype()-Funktion der Datentyp bestimmt:

<?php

  $item = "100Laptops"; // Zuweisung eines Wertes für $item
  echo $item;
  echo "<br>"; // Zeilenumbruch

  $var = gettype($item);
  echo $var; // Ausgabe vom Typ des Wertes von $var
  echo "<br>"; // Zeilenumbruch

  $item = (int) "100Laptops"; // erneute Wertezuweisung
  echo $item;
  echo "<br>"; // Zeilenumbruch

  $var = gettype($item);
  echo $var; // Ausgabe des Datentyps
  echo "<br>"; // Zeilenumbruch

?>

Bekannte Datentypen gibt gettype() als Zeichenkette aus. Bei nicht erkannten Typen erfolgt eine Ausgabe "unknown type".

Browserausgabe:

  100Laptops
  string
  100
  integer

Kommentare (0)

Ihr Kommentar

Name