Récupération de la charge utile de la demande en PHP
Lors de l'utilisation de PHP avec des frameworks comme ExtJS et les magasins ajax, il est possible de rencontrer des scénarios dans lesquels les données de la demande sont envoyé via la charge utile de demande au lieu de POST ou GET. Ces données apparaissent au format JSON dans le champ "Request Payload" de la console Chrome, tandis que $_POST et $_GET restent vides.
Pour récupérer cette charge utile en PHP, utilisez l'extrait suivant :
$request_body = file_get_contents('php://input');
Si la charge utile est au format JSON, vous pouvez l'analyser comme suit :
$data = json_decode($request_body);
La variable $data contiendra désormais les données JSON sous forme de tableau PHP.
Il est important de noter que "php://input" est un flux en lecture seule qui facilite l'accès direct aux données brutes à partir du corps de la requête. Il est préféré à $HTTP_RAW_POST_DATA pour les requêtes POST et constitue une alternative plus économe en mémoire à l'activation de "always_populate_raw_post_data" pour les scénarios dans lesquels $HTTP_RAW_POST_DATA n'est pas renseigné par défaut. Cependant, "php://input" n'est pas pris en charge avec "enctype="multipart/form-data"."
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!