cURL POST 요청에서 배열 사용
cURL을 사용하여 이미지 배열을 보내려고 할 때 사용자는 첫 번째 배열 값이 전송됩니다. 이 질문은 이 문제를 해결하는 방법을 탐구합니다.
원본 코드의 배열 구조에 사소한 결함이 있는 것 같습니다. 이 문제를 해결하려면 http_build_query를 사용하여 배열 형식을 올바르게 지정하는 것이 좋습니다.
<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>
이렇게 수정하면 배열이 쿼리 문자열로 올바르게 인코딩됩니다. 아래의 업데이트된 코드는 이 변경 사항을 통합합니다.
<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>
이 업데이트된 코드를 사용하면 이미지 배열이 POST 요청에서 올바르게 전송됩니다. API는 예상대로 두 이미지를 모두 수신합니다.
위 내용은 cURL POST 요청으로 여러 이미지를 보내는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!