웹 개발에서는 양식 데이터와 함께 파일을 전송하는 것이 일반적인 요구 사항입니다. cURL은 파일 시스템에서 POST 파일에 대한 간단한 방법을 제공하지만 이 기사에서는 임시 파일 생성의 필요성을 우회하여 파일을 문자열로 직접 POST하는 기술을 살펴봅니다.
핵심은 다중 부분/양식 데이터 요청 본문을 수동으로 구성하는 데 있습니다. 파일 업로드에서 양식 필드를 분리하는 것부터 시작하세요. 파일이 아닌 각 필드에 대해 필드 이름과 값을 사용하여 양식 데이터 섹션을 만듭니다.
다음으로 업로드할 각 파일에 대해 파일 이름, MIME 유형 및 이름을 사용하여 양식 데이터 섹션을 만듭니다. 실제 파일 내용.
브라우저와 유사한 POST를 시뮬레이션하려면 적절한 헤더를 설정하십시오.
<code class="php">'Content-Type: multipart/form-data; boundary=' . $delimiter 'Content-Length: ' . strlen($data)</code>
여기서 $delimiter는 각 헤더를 구분하는 고유한 문자열입니다.
<code class="php">$handle = curl_init($url); curl_setopt($handle, CURLOPT_POST, true); curl_setopt($handle, CURLOPT_HTTPHEADER , array( 'Content-Type: multipart/form-data; boundary=' . $delimiter, 'Content-Length: ' . strlen($data))); curl_setopt($handle, CURLOPT_POSTFIELDS, $data); curl_exec($handle);</code>
multipart/form-data 본문을 구성하고 필요한 헤더를 설정함으로써 cURL은 문자열로 표현된 파일을 원활하게 POST할 수 있습니다. 실제 파일로 작업하는 것보다 더 유연하고 효율적인 접근 방식을 제공합니다.
위 내용은 PHP에서 cURL을 사용하여 파일 문자열을 게시하는 방법: 단계별 가이드의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!