Перейти к содержимому

md5()

Функция PHP md5() вычисляет MD5-хеш строки. В этой статье рассматриваются её синтаксис, применение и примеры.

MD5-хеш — это широко используемая криптографическая хеш-функция, которая генерирует 128-битное значение хеша. Синтаксис функции md5() выглядит следующим образом:

Синтаксис PHP для md5()

php
string md5 ( string $str [, bool $raw_output = false ] )

Функция принимает два параметра: $str и $raw_output. Параметр $str — это строка, для которой вычисляется хеш, а параметр $raw_output — логическое значение, указывающее, следует ли выводить сырые двоичные данные хеша или его шестнадцатеричное строковое представление. Если параметр $raw_output опущен или установлен в false, функция вернет шестнадцатеричное строковое представление хеша.

Пример использования PHP md5()

php
<?php
$string = "Hello World!";
$hash = md5($string);
echo $hash;
?>

В этом примере у нас есть переменная $string, содержащая некоторый текст. Мы используем функцию md5() для вычисления MD5-хеша этой строки.

Результат выполнения этого кода будет следующим:

console
ed076287532e86365e841e92bfc50d8c

Как видите, функция md5() успешно вычислила MD5-хеш строки.

Пример вывода в сыром виде

php
<?php
$hash = md5("Hello World!", true);
echo bin2hex($hash);
?>

Когда $raw_output установлен в true, функция возвращает сырой 16-байтовый двоичный хеш. Для отображения его в виде шестнадцатеричной строки можно использовать функцию bin2hex().

Предупреждение: Алгоритм MD5 криптографически устарел и не должен использоваться для хеширования паролей или цифровых подписей. Вместо него используйте password_hash() или hash() с более надежными алгоритмами. MD5 подходит только для некритичных контрольных сумм или обеспечения обратной совместимости со старыми системами.

Функция md5() — это полезный инструмент для работы со строками в PHP. Освоив её, вы сможете писать более качественный код на PHP. Надеемся, эта статья помогла вам лучше понять работу функции md5() в PHP.

Практика

Какова основная функция функции md5() в PHP?

Считаете ли это полезным?

Предпросмотр dual-run — сравните с маршрутами Symfony на продакшене.