PHP 8.1.31 Released!

md5

(PHP 4, PHP 5, PHP 7, PHP 8)

md5Errechnet den MD5-Hash eines Strings

Warnung

Es ist nicht empfohlen, diese Funktion zu verwenden um Passwörter zu hashen, da dieser Passwortalgorithmus relativ schnell ist. Die Seite Password Hashing FAQ enthält weitere Informationen und Best Practices zum Hashen von Passwörtern.

Beschreibung

md5(string $string, bool $binary = false): string

Berechnet den MD5-Hash von string unter Verwendung des » RSA Data Security, Inc. MD5 Message-Digest Algorithm und gibt das Ergebnis zurück.

Parameter-Liste

string

Die Zeichenkette.

binary

Wurde der optionale Parameter binary mit true angegeben, wird der MD5-Wert im Raw-Binary-Format mit einer Länge von 16 Zeichen zurückgegeben.

Rückgabewerte

Gibt den Hash als 32 Zeichen lange Hexadezimalzahl zurück.

Beispiele

Beispiel #1 Ein md5()-Beispiel

<?php
$str
= 'apple';

if (
md5($str) === '1f3870be274f6c49b3e31a0c6728957f') {
echo
"Haetten Sie lieber einen gruenen oder einen roten Apfel?";
}
?>

Siehe auch

add a note

User Contributed Notes 2 notes

up
15
yiminrong at yahoo dot ca
3 years ago
Regarding Ray Paseur's comment, the strings hash to:

0e462097431906509019562988736854
0e830400451993494058024219903391

The odds of getting a hash exactly matching the format /^0+e[0-9]+$/ are not high but are also not negligible.

It should be added as a general warning for all hash functions to always use the triple equals === for comparison.

Actually, the warning should be in the operators section when comparing string values! There are lots of warnings about string comparisons, but nothing specific about the format /^0+e[0-9]+$/.
up
5
Ray.Paseur sometimes uses Gmail
5 years ago
md5('240610708') == md5('QNKCDZO')

This comparison is true because both md5() hashes start '0e' so PHP type juggling understands these strings to be scientific notation. By definition, zero raised to any power is zero.
To Top