1

で操作される画像リソースがありimagecopyresampledます。その画像を、リソースではなく文字列入力を期待する一連のメソッドに渡す必要があります。しかし、ファイルをローカルに保存する必要はありません。

これは適切な方法ですか:

  1. とを使用して画像を保存しimagepngますimagejpeg
  2. 文字列 (ファイル名) をメソッドに渡す
  3. 保存したファイルを破棄する@unlink

そうですか?ずさんなようです。

注: 画像はファイルのアップロードによるものではないため、次の方法でアクセスすることはできません$_FILES["Filedata"]["tmp_name"]

4

1 に答える 1

0

Amazon S3 PHP API を調べてみました: http://docs.amazonwebservices.com/AWSSDKforPHP/latest/index.html#m=AmazonS3/upload_part

upload_partstring を取るメソッドのようなものを使用していると思いますfilename。その場合、ライブラリを変更する予定がない限り、ファイルをディスクに保存し、ファイル名を渡して、ファイルを読み取ってアップロードできるようにする必要があります。

質問に記載されている手順に加えて、をimagedestroy使用してディスクに書き込まれた後、画像リソースのメモリを解放していることを確認できますimagepng。そして、あなたが述べたようにunlink、アップロードが完了したら一時ファイルを削除できます。

確かに少し無駄に思えますが、API が代替手段を提供していないように見えるため、この場合は必要です。

于 2012-05-27T00:05:29.230 に答える