Maison >développement back-end >tutoriel php >Comment envoyer plusieurs images dans une requête cURL POST ?
Utilisation de tableaux dans les requêtes POST cURL
En tentant d'envoyer un tableau d'images à l'aide de cURL, les utilisateurs peuvent rencontrer des problèmes où seul le premier la valeur du tableau est transmise. Cette question explore comment résoudre ce problème.
Le code original semble avoir un défaut mineur dans la structure du tableau. Pour résoudre ce problème, il est recommandé d'utiliser http_build_query pour formater correctement le tableau :
<code class="php">$fields = array( 'username' => "annonymous", 'api_key' => urlencode("1234"), 'images' => array( urlencode(base64_encode('image1')), urlencode(base64_encode('image2')) ) ); $fields_string = http_build_query($fields);</code>
Cette modification garantit que le tableau est correctement encodé dans une chaîne de requête. Le code mis à jour ci-dessous intègre ce changement :
<code class="php">extract($_POST); $url = 'http://api.example.com/api'; $fields = array( 'username' => "annonymous", 'api_key' => urlencode("1234"), 'images' => array( urlencode(base64_encode('image1')), urlencode(base64_encode('image2')) ) ); $fields_string = http_build_query($fields); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $fields_string); $result = curl_exec($ch); echo $result; curl_close($ch);</code>
Avec ce code mis à jour, le tableau d'images sera correctement envoyé dans la requête POST. L'API recevra les deux images comme prévu.
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!