Heim > Backend-Entwicklung > PHP-Tutorial > JavaScript-Objektnotation (JSON) für PHP

JavaScript-Objektnotation (JSON) für PHP

伊谢尔伦
Freigeben: 2016-11-21 17:52:12
Original
1010 Leute haben es durchsucht

Ab PHP 5.2.0 ist die JSON-Erweiterung standardmäßig in PHP integriert und kompiliert.

JSON-Serialisierungsschnittstelle JsonSerializable

Klassen, die JsonSerializable implementieren, können ihre JSON-Darstellung anpassen, wenn json_encode().

JsonSerializable::jsonSerialize – Gibt die Daten an, die in JSON serialisiert werden müssen

Beispiel #1 Gibt ein Array zurück

<?php
    class ArrayValue implements JsonSerializable {
        public function __construct(array $array) {
            $this->array = $array;
        }
        public function jsonSerialize() {
            return $this->array;
        }
    }
    $array = [1, 2, 3];
    echo json_encode(new ArrayValue($array), JSON_PRETTY_PRINT);
?>
Nach dem Login kopieren

Die obige Routine gibt Folgendes aus:

[
    1,
    2,
    3
]
Nach dem Login kopieren

Beispiel #2 Gibt ein assoziatives Array zurück

<?php
    class ArrayValue implements JsonSerializable {
        public function __construct(array $array) {
            $this->array = $array;
        }
        public function jsonSerialize() {
            return $this->array;
        }
    }
    $array = [&#39;foo&#39; => &#39;bar&#39;, &#39;quux&#39; => &#39;baz&#39;];
    echo json_encode(new ArrayValue($array), JSON_PRETTY_PRINT);
?>
Nach dem Login kopieren

Die obige Routine gibt Folgendes aus:

{
    "foo": "bar",
    "quux": "baz"
}
Nach dem Login kopieren

Beispiel #3 Gibt eine Ganzzahl zurück

<?php
    class IntegerValue implements JsonSerializable {
        public function __construct($number) {
            $this->number = (integer) $number;
        }
        public function jsonSerialize() {
            return $this->number;
        }
    }
    echo json_encode(new IntegerValue(1), JSON_PRETTY_PRINT);
?>
Nach dem Login kopieren

Die obige Routine gibt Folgendes aus:

1

Beispiel #4 Gibt eine Zeichenfolge zurück

<?php
    class StringValue implements JsonSerializable {
        public function __construct($string) {
            $this->string = (string) $string;
        }
        public function jsonSerialize() {
            return $this->string;
        }
    }
    echo json_encode(new StringValue(&#39;Hello!&#39;), JSON_PRETTY_PRINT);
?>
Nach dem Login kopieren

Die obige Routine gibt Folgendes aus:

"Hallo!"

JSON-Funktion

json_decode – Zeichenfolgen im JSON-Format kodieren

json_encode – Variablen in JSON kodieren

json_last_error_msg – Gibt die Fehlerzeichenfolge des letzten Aufrufs von json_encode() oder json_decode() zurück

json_last_error – Gibt den zuletzt aufgetretenen Fehler zurück


Verwandte Etiketten:
php
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage