ホームページ  >  記事  >  バックエンド開発  >  PHPで複数のバイナリストリームイメージ/ファイルを処理する方法

PHPで複数のバイナリストリームイメージ/ファイルを処理する方法

WBOY
WBOYオリジナル
2016-06-23 14:26:431280ブラウズ

バイナリ ストリーム バイナリ ストリーム画像は複数のバイナリ ストリーム ファイルを保存します

1. 機能要件は次のとおりです。携帯電話のインターフェイスは複数の画像をアップロードするためのインターフェイスを完成させる必要があり、Web サーバーはバイナリ ストリームを受け入れ、画像を生成する必要があります。それらをローカルに保存し、アドレスをデータベースに保存します
2. 現在、複数のバイナリ ストリームを取得し、複数のバイナリ ストリームを対応する画像に変換してローカルに保存する方法という問題が発生しています
3. 以下は受信する方法です。バイナリ ストリームの画像 対処方法:
//二进制数据流					$file_data = file_get_contents ( 'php://input' ) ? file_get_contents ( 'php://input' ) : gzuncompress ( $GLOBALS ['HTTP_RAW_POST_DATA'] );					//数据流不为空,则进行保存操作					if (! empty ( $file_data )) {						$save_name=md5(get_gmtime().mt_rand(10,99)).".jpg";						$path=create_dir();						//创建并写入数据流,然后保存文件						if (@$fp = fopen ($path['file_path'].$save_name, 'w+' )) {							fwrite ($fp, $file_data);							fclose ($fp);							if (file_exists($path['file_path'].$save_name)) {								ajax_return(array('recode'=>"0000",'msg'=>"操作成功",'data'=>""));							} else {								ajax_return(array('recode'=>"9001",'msg'=>"仅支持jpg,png,jpeg,gif格式的图片类型上传,gif动态图片上传后不会有动态效果",'data'=>""));							}						} else {							ajax_return(array('recode'=>"0001",'msg'=>"操作失败",'data'=>''));						}					} else {						//没有接收到数据流						ajax_return(array('recode'=>"0001",'msg'=>"请选择要上传的图片",'data'=>''));					}

ディスカッションに返信 (解決策)

オンラインで待っています、助けていただければ幸いです

何かアイデアはありますか

アプリのインターフェースを作成したところです数日前に画像を送信したところ、バイナリ比較が問題になりました。
アプリの終了時にブラウザ経由で画像を送信すると、PHP は正常に受信します。
その後、アドレスと画像の属性を返します (ここでローカルに保存する必要はありません)。アプリ側でローカルに保存する必要があります) など。それぞれをループしても大丈夫です。遅くはありません
最後に、アプリは複数の写真、表現、コンテンツなどを送信し、それらをデータベースに保存します。これで問題ないはずです。 . 写真を別々に保存すると一致します! ! !

$FILE の取得

$_FILES を使用して画像データを読み取り、取得します

多くの人に対する答えは、$_FILES を使用してループして取得することであることが分かりました。これは理想的ではないようなので、いくつかのポイントを与えます

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。