Aktueller Standort: Startseite> Neueste Artikel> Wie verwendet ich die Funktion JSON_LAST_ERROR_MSG, um das Datenübertragungsformat zwischen dem Front-End und dem Back-End zu optimieren?

Wie verwendet ich die Funktion JSON_LAST_ERROR_MSG, um das Datenübertragungsformat zwischen dem Front-End und dem Back-End zu optimieren?

gitbox 2025-09-21
<span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-comment">// Dieser Artikel und PHP Verwandt,Wird verwendet, um zu demonstrieren, wie man es benutzt json_last_error_msg Datenübertragung optimieren</span></span><span>
</span><span><span class="hljs-comment">// -------------------------------</span></span><span>

</span><span><span class="hljs-comment"># Wie man benutzt json_last_error_msg Funktionen zur Optimierung des Datenübertragungsformats zwischen Front-End und Back-End?</span></span><span>

In der modernen Zeit Web In der Entwicklung,Die Dateninteraktion zwischen Vorder- und Rückseite ist fast untrennbar miteinander verbunden JSON Format。Front-End-Pass JavaScript Inkapseln Sie die Daten in JSON Objekt,Zum Backend übergehen;Verwenden Sie das Backend PHP Rechts JSON Analyse und Verarbeitung von String。Jedoch,Datenexistieren传输和解析过程Mitte很容易出现Format错误,Zum Beispiel Codierungsprobleme、Fehlende Zitate oder Syntax -Unregelmäßigkeiten。Wenn diese Fehler nicht rechtzeitig erfasst werden,Dies kann einen abnormalen Programmbetrieb oder sogar einen Datenverlust verursachen。为了更好地优化前后端之间的Daten传输Format,`</span><span><span class="hljs-title function_ invoke__">json_last_error_msg</span></span><span>()` Funktionen sind zu einem sehr praktischen Werkzeug geworden。

</span><span><span class="hljs-comment">## eins、Was ist `json_last_error_msg()`</span></span><span>

existieren PHP Mitte,Wenn wir benutzen `</span><span><span class="hljs-title function_ invoke__">json_encode</span></span><span>()` oder `</span><span><span class="hljs-title function_ invoke__">json_decode</span></span><span>()` Funktionszeit,Fehler können auftreten。PHP Bereitgestellt `</span><span><span class="hljs-title function_ invoke__">json_last_error</span></span><span>()` Geben Sie den Fehlercode zurück,Diese Fehlercodes sind jedoch Zahlen,Nicht intuitiv。Und `</span><span><span class="hljs-title function_ invoke__">json_last_error_msg</span></span><span>()` 则会返回Rechts应的错误信息Saite,Leichter für Entwickler zu verstehen und zu debuggen。

Beispiel:

```php
</span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-variable">$data</span></span><span> = </span><span><span class="hljs-string">"{invalidJson: true}"</span></span><span>; </span><span><span class="hljs-comment">// illegal JSON Saite</span></span><span>
</span><span><span class="hljs-variable">$result</span></span><span> = </span><span><span class="hljs-title function_ invoke__">json_decode</span></span><span>(</span><span><span class="hljs-variable">$data</span></span><span>, </span><span><span class="hljs-literal">true</span></span><span>);

</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-title function_ invoke__">json_last_error</span></span><span>() !== JSON_ERROR_NONE) {
    </span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Analyse fehlgeschlagen:"</span></span><span> . </span><span><span class="hljs-title function_ invoke__">json_last_error_msg</span></span><span>();
}
</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>

Die Ausgabe kann sein:

 <span><span>Analyse fehlgeschlagen:Syntax </span><span><span class="hljs-type">error</span></span><span>
</span></span>

Auf diese Weise können Entwickler das Problem schnell lokalisieren, anstatt sich ausschließlich auf Fehlercodes zu verlassen.

2. Die Bedeutung der Optimierung von Front-End- und Back-End-Datenübertragung

  1. Stellen Sie die Datenintegrität sicher : Wenn die Datenstruktur während des Übertragungsprozesses beschädigt ist, kann sie rechtzeitig ermittelt und das Front-End zur Korrektur aufgefordert werden.

  2. Verbesserung der Benutzererfahrung : Die Fehlermeldung ist klar und klar, was das Front-End erleichtert, um schnell Probleme zu finden und die Kommunikationskosten zu senken.

  3. Verbesserte System Robustheit : Durch den Fehlererkennungsmechanismus können Geschäftslogikunterbrechungen durch Parsenfehler vermieden werden.

3. Praxis in Kombination mit Anwendungsszenarien

1. Überprüfen Sie, ob Sie Front-End-Daten erhalten

 <span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-comment">// 假设Front-End-Pass AJAX schicken JSON Daten</span></span><span>
</span><span><span class="hljs-variable">$jsonInput</span></span><span> = </span><span><span class="hljs-title function_ invoke__">file_get_contents</span></span><span>(</span><span><span class="hljs-string">"php://input"</span></span><span>);
</span><span><span class="hljs-variable">$data</span></span><span> = </span><span><span class="hljs-title function_ invoke__">json_decode</span></span><span>(</span><span><span class="hljs-variable">$jsonInput</span></span><span>, </span><span><span class="hljs-literal">true</span></span><span>);

</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-title function_ invoke__">json_last_error</span></span><span>() !== JSON_ERROR_NONE) {
    </span><span><span class="hljs-title function_ invoke__">http_response_code</span></span><span>(</span><span><span class="hljs-number">400</span></span><span>);
    </span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-title function_ invoke__">json_encode</span></span><span>([
        </span><span><span class="hljs-string">"status"</span></span><span> =&gt; </span><span><span class="hljs-string">"error"</span></span><span>,
        </span><span><span class="hljs-string">"message"</span></span><span> =&gt; </span><span><span class="hljs-string">"Ungültig JSON Format: "</span></span><span> . </span><span><span class="hljs-title function_ invoke__">json_last_error_msg</span></span><span>()
    ]);
    </span><span><span class="hljs-keyword">exit</span></span><span>;
}

</span><span><span class="hljs-comment">// 如果DatenFormat正确,Fortsetzung der Geschäftslogik</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-title function_ invoke__">json_encode</span></span><span>([
    </span><span><span class="hljs-string">"status"</span></span><span> =&gt; </span><span><span class="hljs-string">"success"</span></span><span>,
    </span><span><span class="hljs-string">"data"</span></span><span> =&gt; </span><span><span class="hljs-variable">$data</span></span><span>
]);
</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>

Auf diese Weise kann das Backend JSON -Parsingprobleme so schnell wie möglich entdecken und freundliche Fehleraufforderungen zurückgeben.

2. Überprüfen Sie bei der Ausgabe von Daten am vorderen Ende

 <span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-variable">$response</span></span><span> = [
    </span><span><span class="hljs-string">"status"</span></span><span> =&gt; </span><span><span class="hljs-string">"success"</span></span><span>,
    </span><span><span class="hljs-string">"message"</span></span><span> =&gt; </span><span><span class="hljs-string">"Betrieb abgeschlossen"</span></span><span>,
    </span><span><span class="hljs-string">"data"</span></span><span> =&gt; [</span><span><span class="hljs-string">"id"</span></span><span> =&gt; </span><span><span class="hljs-number">123</span></span><span>, </span><span><span class="hljs-string">"name"</span></span><span> =&gt; </span><span><span class="hljs-string">"Testen Sie den Benutzer"</span></span><span>]
];

</span><span><span class="hljs-variable">$jsonOutput</span></span><span> = </span><span><span class="hljs-title function_ invoke__">json_encode</span></span><span>(</span><span><span class="hljs-variable">$response</span></span><span>);

</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-title function_ invoke__">json_last_error</span></span><span>() !== JSON_ERROR_NONE) {
    </span><span><span class="hljs-title function_ invoke__">error_log</span></span><span>(</span><span><span class="hljs-string">"JSON Codierung fehlgeschlagen:"</span></span><span> . </span><span><span class="hljs-title function_ invoke__">json_last_error_msg</span></span><span>());
    </span><span><span class="hljs-title function_ invoke__">http_response_code</span></span><span>(</span><span><span class="hljs-number">500</span></span><span>);
    </span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"服务器DatenFormat错误"</span></span><span>;
    </span><span><span class="hljs-keyword">exit</span></span><span>;
}

</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$jsonOutput</span></span><span>;
</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>

Dies stellt sicher, dass die vom Backend an das Frontend zurückgegebenen JSON -Daten immer legitim und parserbar sind.

4. Zusammenfassung

In der Front-End-Datenübertragung ist JSON das Kernformat. Fehler sind jedoch während des Verarbeitungsprozesses unvermeidlich. JSON_LAST_ERROR_MSG () bietet Entwicklern eine intuitive Möglichkeit, Fehler zu fangen und zu beschreiben, was nicht nur dazu beiträgt, Probleme zu lokalisieren, sondern auch die Robustheit und die Benutzererfahrung des Systems erheblich zu verbessern. Durch die angemessene Anwendung dieser Funktion auf die Datenempfangs- und Ausgangsverbindungen kann das Datenübertragungsformat zwischen den Vorder- und Rücksenden effektiv optimiert werden, wodurch der Systembetrieb stabiler und zuverlässiger wird.

 <span></span>