PHP 양식 POST에서 cURL을 통해 파일을 보내는 방법은 무엇입니까?

Linda Hamilton
풀어 주다: 2024-11-09 09:16:02
원래의
672명이 탐색했습니다.

How to Send a File via cURL from a PHP Form POST?

PHP의 Form POST에서 cURL을 통해 파일 보내기

양식 게시물에서 파일 업로드를 처리하는 것은 API 개발의 일반적인 작업입니다. 이 질문은 PHP 스크립트를 사용하여 cURL을 통해 파일을 보내는 방법을 탐구합니다.

HTML 양식에는 파일 업로드 입력 필드가 포함되어 있습니다.

<form action="script.php" method="post" enctype="multipart/form-data">
  <input type="file" name="image">
  <input type="submit" name="upload" value="Upload">
</form>
로그인 후 복사

서버 측 PHP 스크립트(script.php )는 먼저 "업로드" 버튼이 클릭되었는지 확인합니다.

if (isset($_POST['upload'])) {
  // Handle file upload with cURL
}
로그인 후 복사

cURL을 사용하여 파일을 보내려면 다음 매개변수를 설정해야 합니다.

  • CURLOPT_URL: URL 원격 파일 업로드 대상
  • CURLOPT_UPLOAD: 1(요청에 파일 업로드가 포함되어 있음을 나타냄)
  • CURLOPT_INFILE: 서버에 업로드된 임시 파일의 파일 포인터
  • CURLOPT_INFILESIZE : 파일 크기(바이트)

다음은 파일을 보내는 샘플 cURL 코드 조각입니다.

$localFile = $_FILES['image']['tmp_name']; 
$url = "https://example.com/file_upload.php";

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, array('file' => '@' . $localFile);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($ch);
curl_close($ch);
로그인 후 복사

수신 측에서는 스크립트가 파일 업로드를 처리하고 그에 따라 저장하십시오. 예는 다음과 같습니다.

$file = $_FILES['file'];
$fileName = $file['name'];
$fileTmpName = $file['tmp_name'];
move_uploaded_file($fileTmpName, '/path/to/uploads/' . $fileName);
로그인 후 복사

위 내용은 PHP 양식 POST에서 cURL을 통해 파일을 보내는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿