• ベストアンサー

2つの画像ファイルが異なるファイルだと判定したい

はせがわ もぐら(@mogura_198)の回答

回答No.2

md5_file() こちらの関数でハッシュ値を比較してみてはいかがでしょうか。 <?php if(md5_file('hoge1.jpg') === md5_file('hoge2.jpg')){   echo "同じ画像ファイルです。"; }else{   echo "同じ画像ファイルではありません。"; } ?>

参考URL:
http://php.net/manual/ja/function.md5-file.php
tadao-o
質問者

お礼

ご回答ありがとうございます。md5_fileという関数があるのは知りませんでした。参考にさせていただきます。

関連するQ&A

  • テキストファイルを経由しての画像呼び出し

    はじめまして。 PHPをはじめてまだ間もない者ですが、行き詰ってしまいましたのでご質問させていただきたいと思います。 画像をアップロードする時に backimg.txt という名前でファイル名を取得しているのですが それを利用して画像を呼び出そうとしているのですがどうにも表示してくれません。 表示どころか、エラーが出てしまいます… ファイル構成・PHP部分は以下の通りです。 public_html ├─ index.php  ←ここの一部のプログラムです ├─  ・ ├─  ・ └─ background_img     ├─ backimg.txt  アップロードしたファイル名が記述     └─ test.jpg   アップロードした画像 <?php if(file_exists("background_img/backimg.txt")){ $fp = fopen("background_img/backimg.txt","r") or die("ファイルのオープンに失敗しました"); $buff = fgets($fp); fclose($fp); } echo'<img src="'.$buff.'" border="0">'; ?> ※この $buff = fgets($fp); の部分でエラーが出ます。 backimg.txt内の文字(UPする度、この一行を上書きしていってます) ──────────────────   background_img/test.jpg ────────────────── ※PHPでアップロードした画像は  background_img フォルダに入るようになっています。 ※画像名はまちまち変わりますので、 test.jpg 固定ではありません。 ※データベースを使えないサーバを利用しております。 以上の条件でどうやったら解決できるのか、 お手数おかけいたしますが、教えていただければ幸いに思います。

    • ベストアンサー
    • PHP
  • フルパスからファイル名取得をしたい

    たとえば http://hoge.com/hoge.php とあった場合、そのhoge.phpの中で"hoge"という文字列 を取得したいのですが。。。 どうやればいいでしょうか? よろしく願いします。

    • ベストアンサー
    • PHP
  • phpでテキストファイルの特定のワードを抽出

    タイトルの通りです。 phpを使い、テキストファイルの中に書かれている文字列をhtmlに表示することはできました。 <?php //ファイルを開く //モード[r]の読み込み専用 if (! ($fp = fopen ( "list.txt", "r" ))) { echo "ファイルが開けません。"; } while (! feof ($fp)) { $load = fgets ($fp, 4096); echo $load; } ?> このような感じです。 ですが、テキストファイルの中の特定の文字(例:美しい)を抽出したいのですが、どのようにプログラムを書いて良いかわかりません。 どなたかアドバイスをお願いします。

    • 締切済み
    • PHP
  • htmlの入力フォームからphpに値を渡しphpから画像ファイルが組み込まれたhtmlを生成する方法について

    イメージとしては脳内メーカーの様に、入力された文字列を画像に置き換えて、 生成されたhtmlに画像の組み込みを行いたいのですが上手くいきません。 基礎的な理解が低くて申し訳ないのですが、 やりたい事は以下のとおりです。 (1)「入力.html」ファイルのインプットフォームに文字情報を入力。 (2)入力した文字情報を「処理.php」ファイルに送信。 (3)「処理.php」ファイルで入力された文字列を画像ファイルに置き換える。⇒「画像.jpg」を生成。 (4)生成された「画像.jpg」を「出力.html」ファイルに組み込み、「出力.html」を表示。 (1)(2)(3)の工程までは作成できたのですが、生成した画像を別のhtmlファイルに組み込んで表示させる方法が分かりません。 <IMG src="~.php?val=XXX">といった形でhtmlに組み込むことができるのはわかっているのですが、、、、、 セッション変数を使わないとだめなのでしょうか?

    • 締切済み
    • PHP
  • mysqlのblob型の画像表示について

    テーブルの項目にblob型を作成し、 phpでテーブルから取得した画像を画面に表示させたいのですが、 以下のように表示させることは可能でしょうか? test.php ---------- ここから画面 ---------------------------------------- 取得したblob型の画像その1.jpg 取得したblob型の画像その2.gif 取得したblob型の画像その3.png それぞれの画像の説明 ---------- ここまで画面 ---------------------------------------- テーブルへのデータ挿入はphpMyAdminから挿入しています。 header('Content-type: image/jpeg'); echo SQLで取得した値; のようにすればjpg画像は表示できましたが、gif画像とpng画像は表示できませんでした。 また、jpg画像のみを表示させることは出来ましたが文章を表示させることはできませんでした。 上記のように一つのphpファイルで複数表示させるのはできないのでしょうか?

    • ベストアンサー
    • PHP
  • PHPでgz形式のファイルをダウンロード→解凍出来ない

    こんにちは。ブラウザからリクエストがあった際に、 ローカルに保存されているgzip形式で圧縮した XMLファイルをPHPで読み込んで ダウンロードさせる、というプログラムを作成しております。 ダウンロードした後、解凍しようとすると 「破損ファイルです」とのメッセージが出て 解凍が出来ません。 ダウンロードしたファイルをバイナリエディタで開いてみると、 先頭に"0A"、 末尾に"0A090A" というゴミ?なんでしょうか、変なものが付いています。 (これが何かは調べても分かりませんでした。 また、このゴミを削除すると解凍出来ました) ローカルに保存したファイル、及び、PHP内の読み込みまではゴミは付いていませんでした。 //ソース抜粋 header('Content-Type: application/gzip;'); header('Content-disposition: attachment; filename=hogexml.gz'); $fp = fopen('/home/hoge/hogexml.gz', 'rb'); $str = fread($fp, filesize('/home/hoge/hogexml.gz')); $echo $str; //この時点でbin2hex()で$strをダンプしてもゴミは付いていない fclose($fp); ファイルはEUC-JPでDBから取得した文字列をUTF-8に変換してから圧縮して作成しております。 圧縮関数はgzopen(),gzwrite(),gzclose()です。 またブラウザからhttp://hogehoge_arienai.com/hogexml.gzという様に ファイルを直接指定してダウンロードした場合は問題なく解凍されました。 八方塞がり状態でどうしたら良いものかと・・(´△⊂)・. こういった現象にちょっとでも心あたりのある方おられましたら ヒントでも構いませんので、何卒ご返答の程よろしくお願い致しますす。 <PHPスクリプトの動いているサーバ> OS:FreeBSD6.1 Apache:2.0.58 PHP:5.1.2 <ダウンロードしているクライアント> WindowsXP Pro

    • ベストアンサー
    • PHP
  • 2次元ハッシュ または 2次元配列をソートしたい

    2次元ハッシュのソートをしたいです。 ハッシュは2つのキーを使用していて、 1つ目のキーは文字列、2つ目のキーは数字(0からの連番)です。 ハッシュの中身は文字列が入っています。 これを次のような表に見立てて、特定の列でソートしたいのです。 hash['a']['0'], hash['a']['1'], ..., hash['a']['50'], hash['q']['0'], hash['q']['1'], ..., hash['q']['50'], hash['c']['0'], hash['c']['1'], ..., hash['c']['50'], ... hash['d']['0'], hash['d']['1'], ..., hash['d']['50'], 例えば 6列目の値によってソートするということです。 以下のようにソートしようとしましたが、うまくいきません。 my @sorthash = sort { $a->[6] <=> $b->[6] } @hash; 何かヒントがあれば教えてください。

    • ベストアンサー
    • Perl
  • CでCSVファイルを扱う

    いつもお世話になっております。 今回はCSVファイルの扱いについてお聞きしたいです。 現在、 "hoge","hogehoge","…","…" というようなCSVファイルを扱いたいと思い、いろいろ試しているのですがなかなかうまくいきません。 CSVの各行をgetlineで取得して、カンマで分けるだけならできたのですが、","のまとまりで分けたいのです。現在は文字で分割はできるのですが文字列で分割する方法がわかりません。 ","で分けたい理由はたとえば"hoge,hoge"という文字列をカンマで分けてしまうと二つに分かれてしまいそれを避けたいです。 分割点の前後の文字から判断しようともしてみましたがうまくいきませんでした。 アドバイスなどありましたらご教授願います。 現在は以下のようになっております。 ifstream ifs; string temp; LPCTSTR str; ifs.open("test.csv", ios::in); while(getline(ifs, temp)) {  str = strtok(const_cast<char*>(temp.c_str()), _T(",")); printf("%s\n", str);  while(str != NULL)  {   str = strtok(NULL, ",");   if (str != NULL)   {    printf("%s\n", str);   }  } } 以上のもので CSVの"1","2","3","4" が"1"と"2"と"3"と"4"になります。 これを1と2と3と4にしたいです。 よろしくお願いします。 環境はWindowsXP VisualStudio6.0 MFC未使用 です。お願いします。

  • fopenの使い方?(画像の保存)

    お世話になります。 exif_thumbnailで取得したサムネイル画像をjpgファイルとして元画像ファイルとは別名で保存したいと考えています。 テストで以下のようなコードを作成しましたが、うまく保存できません。fopenの基本的な使い方が間違っているのではないかと思っていますが、どこがおかしいのかわからずにおります。 <?php $img = exif_thumbnail("./test.jpg", $width, $height, $type); $handle = fopen ("./thumb.jpg", 'a'); fwrite($handle, $img); ?> ちなみにPHPのバージョンは5.0.3です。 echo($img);でサムネイル画像が取得できていることは確認できております。 要はtest.jpg → $img → thumb.jpgとできればいいのですが。。 どうしたらうまく保存できますでしょうか。 よろしくお願いします。

    • 締切済み
    • PHP
  • bash での空文字判定?

    文字列が空文字かどうか判定する場合(?)に、よく以下のような記述を見ます if [ "x${str}" = "x" ]; then echo "str is empty." fi なぜ、"${str}" = "" ではないのでしょうか?