Maison > développement back-end > tutoriel php > Comment extraire un corps JSON POST en PHP ?

Comment extraire un corps JSON POST en PHP ?

DDD
Libérer: 2024-12-16 17:02:10
original
518 Les gens l'ont consulté

How to Extract a JSON POST Body in PHP?

Extraction du corps de la publication JSON en PHP

Considérez les données JSON POST suivantes :

{a:1}
Copier après la connexion

En PHP, le La variable $_POST par défaut ne contiendra pas ces données. Au lieu de cela, accédez au corps brut de la requête HTTP en utilisant :

$entityBody = file_get_contents('php://input');
Copier après la connexion

Vous pouvez également utiliser la constante STDIN :

$entityBody = stream_get_contents(STDIN);
Copier après la connexion

Notez que php://input n'est pas recherché et ne peut être lu qu'une seule fois. . Pour les corps volumineux, envisagez d'utiliser un fichier temporaire pour conserver la ressource de flux :

function detectRequestBody() {
    $rawInput = fopen('php://input', 'r');
    $tempStream = fopen('php://temp', 'r+');
    stream_copy_to_stream($rawInput, $tempStream);
    rewind($tempStream);

    return $tempStream;
}
Copier après la connexion

Des exceptions se produisent lors de la spécification d'un en-tête "multipart/form-data" dans la requête POST, car PHP analyse déjà ces données dans le $_POST superglobal.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal