- 締切済み
2つのイメージファイルを比較する
PHPで2つのイメージファイルを比較して、それらが同じであるか異なるかを調べるにはどうすればよいでしょうか?
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- yexob328
- ベストアンサー率25% (1/4)
以下のように比べる2つのファイルを開いて比べるのはどうでしょう。 $file_name1 = '画像1'; $file_name2 = '画像2'; $fp1 = fopen("$file_name1", "r"); $img1 = fread($fp1, filesize($file_name1)); fclose($fp1); $fp2 = fopen("$file_name2", "r"); $img2 = fread($fp2, filesize($file_name2)); fclose($fp2); if($img1 == $img2){ print '同じ画像'; } else { print '違う画像'; }
- tecinfo
- ベストアンサー率52% (32/61)
追加インストールが必要になりますが、xdiff関数で実現できるかと思います。
お礼
ご回答ありがとうございます。 早速、参考URLへ行って参りました。 サイトにはコードがテキスト形式で記載されておりました。 しかし、私にはその意味が分かりませんでした。(そのコードはPHPだったのでしょうか?) どのようにしたらlibxdiffをインストールできますでしょうか? ちなみに、Linuxでもyumを使い、ダウンロードを試みてみましたが、何も起こりませんでした。
補足
すみません。参考URLからダウンロードサイトに行くリンクを間違えていました。 xdiffは http://pecl.php.net/package/xdiff よりダウンロードが可能でした。 現在、xdiffを手動でインストールしていますが、 http://jp2.php.net/manual/ja/ref.xdiff.php における以下の手順通りに進めておりますが、configureできません。 (というより、configureファイルが生成されませんでした。) gunzip xdiff-xxx.tgz tar -xvf xdiff-xxx.tar cd xdiff-xxx phpize ./configure && make && make install
お礼
yexob328さんの方法でもできると思います。 よくは分かりませんが、ファイルを開いた場合、 最後まで読み込んで処理するので、時間が掛かると思います。 サーバーの効率を考えたいので、別の方法でやってみますが、 アドバイス、ありがとうございました。