Rechercher une fonction PHP

var_export

(PHP 4 >= 4.2.0, PHP 5, PHP 7)

var_exportGibt den Inhalt einer Variablen als parsbaren PHP-Code zurück

Beschreibung

var_export ( mixed $expression [, bool $return = FALSE ] ) : mixed

var_export() liefert strukturierte Informationen zum Inhalt der übergebenen Variable. Das Verhalten ist ähnlich dem der var_dump(), allerdings ist hier das Ergebnis valider PHP-Code mit dem sich der Inhalt der Variable wieder herstellen lässt.

Erste Seite von PHP-Handbuch Inhaltsverzeichnis Haut

Parameter-Liste

expression

Die zu exportierende Variable.

return

Wird dieser Parameter auf TRUE gesetzt so wird das Ergebnis nicht direkt ausgegeben sondern als string zurückgegeben.

Erste Seite von PHP-Handbuch Inhaltsverzeichnis Haut

Rückgabewerte

Liefert die Repräsentation der Variablen als PHP-Code wenn der return-Parameter genutzt wird und als Wert TRUE ergibt. Anderenfalls gibt die Funktion NULL zurück.

Erste Seite von PHP-Handbuch Inhaltsverzeichnis Haut

Anmerkungen

Hinweis:

Wenn der return Parameter verwendet wird, benutzt diese Funktion intern Ausgabepufferung und kann daher nicht in einer ob_start()-Callbackfunktion eingesetzt werden.

Erste Seite von PHP-Handbuch Inhaltsverzeichnis Haut

Changelog

Version Beschreibung
5.1.0 Möglichkeit Klassen und Arrays die Klassen enthalten mit Hilfe der 'magischen' __set_state Methode zu exportieren.

Erste Seite von PHP-Handbuch Inhaltsverzeichnis Haut

Beispiele

Beispiel #1 var_export() Beispiel

<?php
$a 
= array (12, array ("a""b""c"));
var_export($a);
?>

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

array (
  0 => 1,
  1 => 2,
  2 => 
  array (
    0 => 'a',
    1 => 'b',
    2 => 'c',
  ),
)
<?php

$b 
3.1;
$v var_export($btrue);
echo 
$v;

?>

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

3.1

Beispiel #2 Export von Klassen ab PHP 5.1.0

<?php
class { public $var; }
$a = new A;
$a->var 5;
var_export($a);
?>

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

A::__set_state(array(
   'var' => 5,
))

Beispiel #3 Nutzung von __set_state (ab PHP 5.1.0)

<?php
class A
{
    public 
$var1;
    public 
$var2;

    public static function 
__set_state($an_array)
    {
        
$obj = new A;
        
$obj->var1 $an_array['var1'];
        
$obj->var2 $an_array['var2'];
        return 
$obj;
    }
}

$a = new A;
$a->var1 5;
$a->var2 'foo';

eval(
'$b = ' var_export($atrue) . ';'); // $b = A::__set_state(array(
                                            //    'var1' => 5,
                                            //    'var2' => 'foo',
                                            // ));
var_dump($b);
?>

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

object(A)#2 (2) {
  ["var1"]=>
  int(5)
  ["var2"]=>
  string(3) "foo"
}

Erste Seite von PHP-Handbuch Inhaltsverzeichnis Haut

Anmerkungen

Hinweis:

Variablen vom Typ resource können von dieser Funktion nicht exportiert werden.

Hinweis:

var_export() ist nicht in der Lage zirkuläre Referenzen aufzulösen da es annähernd unmöglich ist hierfür gültigen PHP-Code zu erzeugen. In solchen Fällen empfiehlt sich statt dessen die Nutzung der serialize() für eine vollständige Repräsentation von entsprechenden Arrays oder Objekten.

Warnung

Wenn var_export() Objekte exportiert, ist zwecks größtmöglicher Kompatibilität der führende Backslash nicht im Namen von Klassen in Namensräumen enthälten.

Hinweis:

Um das von var_export() erzeugte PHP ausführen zu können, müssen alle verarbeiteten Objekte die magische __set_state Methode implementieren. Es ist zu beachten, dass StdClass __set_state() nicht implementiert.

Erste Seite von PHP-Handbuch Inhaltsverzeichnis Haut

Siehe auch

  • print_r() - Gibt Variablen-Informationen in lesbarer Form aus
  • serialize() - Erzeugt eine speicherbare Repräsentation eines Wertes
  • var_dump() - Gibt alle Informationen zu einer Variablen aus

Finde eine PHP-Funktion

Deutsche Übersetzung

Sie haben gebeten, diese Seite auf Deutsch zu besuchen. Momentan ist nur die Oberfläche übersetzt, aber noch nicht der gesamte Inhalt.

Wenn Sie mir bei Übersetzungen helfen wollen, ist Ihr Beitrag willkommen. Alles, was Sie tun müssen, ist, sich auf der Website zu registrieren und mir eine Nachricht zu schicken, in der Sie gebeten werden, Sie der Gruppe der Übersetzer hinzuzufügen, die Ihnen die Möglichkeit gibt, die gewünschten Seiten zu übersetzen. Ein Link am Ende jeder übersetzten Seite zeigt an, dass Sie der Übersetzer sind und einen Link zu Ihrem Profil haben.

Vielen Dank im Voraus.

Dokument erstellt 30/01/2003, zuletzt geändert 26/10/2018
Quelle des gedruckten Dokuments:https://www.gaudry.be/de/php-rf-function.var-export.html

Die Infobro ist eine persönliche Seite, deren Inhalt in meiner alleinigen Verantwortung liegt. Der Text ist unter der CreativeCommons-Lizenz (BY-NC-SA) verfügbar. Weitere Informationen auf die Nutzungsbedingungen und dem Autor.

Referenzen

  1. Zeigen Sie - html-Dokument Sprache des Dokuments:fr Manuel PHP : http://php.net

Diese Verweise und Links verweisen auf Dokumente, die während des Schreibens dieser Seite konsultiert wurden, oder die zusätzliche Informationen liefern können, aber die Autoren dieser Quellen können nicht für den Inhalt dieser Seite verantwortlich gemacht werden.
Der Autor Diese Website ist allein dafür verantwortlich, wie die verschiedenen Konzepte und Freiheiten, die mit den Nachschlagewerken gemacht werden, hier dargestellt werden. Denken Sie daran, dass Sie mehrere Quellinformationen austauschen müssen, um das Risiko von Fehlern zu reduzieren.

Inhaltsverzeichnis Haut