2012-05-26 2 views
1

imagecopyresampled으로 조작되는 이미지 리소스가 있습니다. 그 이미지를 자원이 아닌 문자열 입력을 기대하는 메소드 세트에 전달해야합니다. 하지만 파일을 로컬에 저장할 필요가 없습니다.PHP 용 임시 이미지 파일을 저장하는 올바른 방법

  1. 스토어
  2. @unlink

에 저장된 파일을 파괴 방법에 imagepngimagejpeg

  • 패스 문자열 (파일 이름)으로 이미지인가 :

    이 적절한 방법인가 맞지? 엉성한 것 같습니다.

    참고 : 이미지 파일 업로드에서 오는되지 않으며, 따라서 나는 아마존 S3 PHP API를 살펴했다 $_FILES["Filedata"]["tmp_name"]

  • +0

    이 방법에 대한 자세한 내용과 질문/요구 사항을 알려주십시오. 당신이 달리 할 필요가있는 것을 말하기 어려움. – Death

    +1

    솔직히 여기서 중요한 질문은 그 이미지가 어디서 비롯된 것인가하는 것입니다. 형식 업로드에서 가져온 것이면 이미 이미지가 임시 위치에 저장되어 있으므로 이미지를 직접 저장할 필요가 없습니다. – Peter

    +0

    @ 피터, 그들은 형식 ​​업로드가 아닙니다. 하나의 이미지를 CDN에서 잘라내어 자르고 CDN (Amazon S3 CDN + 클래스 및 메소드)으로 자른 버전을 다시 보냅니다. – Kyle

    답변

    0

    에 액세스 할 수 없습니다 : http://docs.amazonwebservices.com/AWSSDKforPHP/latest/index.html#m=AmazonS3/upload_part

    당신을 가정 문자열 filename을 사용하는 upload_part 메서드를 사용하고 있습니다. 이 경우 라이브러리를 수정하지 않으려면 파일을 디스크에 저장하고 파일을 전달하여 파일을 읽고 업로드를 수행해야합니다.

    imagepng으로 디스크에 기록한 후 이미지 리소스에 대한 메모리를 확보하려면 질문에 언급 된 단계 외에도 imagedestroy을 살펴보십시오. 그리고 업로드가 완료되면 명시된대로 unlink으로 임시 파일을 삭제할 수 있습니다.

    나는 약간의 낭비가 있지만이 경우 API가 대안을 제공하지 않는 것 같기 때문에 동의한다.

    +0

    감사합니다! 매우 도움이되는 대답. – Kyle

    관련 문제