Neden aynı giriş iki farklı MD5 sağlamalarının dönüyor?

4 Cevap php

Tamam, ben iki dosya var. Onlar AYNI vardır.

The first file is: http://iadsonline.com/servconfig.php

And the second file is: http://xzerox.info/servconfig.php

I md5_file () kendi MD5 almak için kullanmak Ancak, onlar iki farklı MD5 en dönün.

Yanlış ilk döner cc7819055cde3194bb3b136bad5cf58d, ve ikinci döner 96a0cec80eb773687ca28840ecc67ca1, doğru.

Dosya sadece bir   olduğunu

Doğrulamak için, bu kodu kullandım:

$contents = file_get_contents($URL);
echo htmlentities($contents);

Ve ikisi de dönüş  

Peki neden bunları farklı karma mı?

4 Cevap

Ikinci bir satır biter, ilk değil.

curl ile çalışırken, ben ilk   without bir satır görmek ondan sonra, ikinci bir   {[(4 olduğunu ondan sonra)]} bir satır. Yani tabii ki onlar farklı karma olacak. Ve gerçekten de, hatta komut satırından (bash istemi) de:

$ md5 sc.dat 
MD5 (sc.dat) = cc7819055cde3194bb3b136bad5cf58d
$ md5 zz.dat
MD5 (zz.dat) = 96a0cec80eb773687ca28840ecc67ca1

Eğer bu dosyaların birinde boşluk olabilir? Bir metin editörü bunları açın ve show all characters.

Alternatif olarak, bu gibi bir şey çalıştırmak

echo str_replace(array("\n", "\t", "\r"), '[I AM HIDING!]', file_get_contents($URL));

Eğer [I AM HIDING!] görürseniz, ne yapacağını bilecek :)

Bu da bana oldu. I () aynı sonuçları verir şimdi md5 :) depolamak ve karma dizeleri almak tüm dosyalara (BOM olmadan utf-8) aynı kodlamayı set :)