СервисыСправочник
Web
CSS
JavaScript
HTML
C#
jQuery
PHP
Flash
Yii / Yii2
Java
Net
CMS
3D
Parallax
MySQL
Ajax
XML
SEO
FTP
JSON
Design
Python
Back-end
Front-end
ASP
Perl
Template
Domain
Hosting
Plugin
Browser
DNS
SVG
Effect
Опрос
Какой ИКС вашего сайта?







Авторизация
Логин:
Пароль:
Главная / Справочник / PHP / Функция md5() в PHP: простое объяснение, применение и примеры

Функция md5() в PHP: простое объяснение, применение и примеры

Функция md5() — это способ получить хеш (отпечаток) строки. Она преобразует любой текст, число или файл в уникальную последовательность из 32 символов (цифры и латинские буквы a-f). Такой хеш используют для проверки целостности данных, генерации уникальных идентификаторов, хранения паролей (устаревший способ) и других задач.

Применение md5()

• Проверка целостности данных (сравнение хешей файлов или строк)
• Генерация уникальных идентификаторов (например, для ссылок, токенов, имён файлов)
• Хранение паролей (устаревший и небезопасный способ)
• Сравнение больших данных (сравнение коротких хешей вместо длинных строк)
• Обработка кэша (создание ключей для кэширования)

Использование md5()

Синтаксис:

md5($string, $raw_output = false)

• $string — строка для хеширования
• $raw_output (необязательный) — если true, возвращает 16 байт (сырые данные), если false (по умолчанию) — строку из 32 символов

Аргументы md5()

• $string — строка для хеширования (любой текст, число, содержимое файла)
• $raw_output (опционально) — булево значение:
    • false (по умолчанию) — возвращает строку из 32 символов (шестнадцатеричный вид)
    • true — возвращает 16-байтовую строку (для внутреннего использования)

Возвращаемое значение md5()

• Строка из 32 символов (цифры 0-9 и буквы a-f), если $raw_output = false
• Строка из 16 байт, если $raw_output = true

Примеры использования

1. Получить md5-хеш строки:

echo md5("Привет, мир!"); // Например: 9a0b2eecb7c0c7e3e3e3e3e3e3e3e3e3

2. Хешировать пароль (НЕ рекомендуется для реальных проектов!):

$password = "mySecret123";
$hash = md5($password);
echo $hash; // Например: 42f749ade7f9e195bf475f37a44cafcb

3. Проверить целостность файла:

$file = "data.txt";
$hash = md5(file_get_contents($file));
echo $hash;

4. Генерировать уникальное имя файла:

$filename = "image.jpg";
$unique = md5($filename . time());
echo $unique . ".jpg";

5. Получить “сырое” значение (16 байт):

$raw = md5("test", true);
echo base64_encode($raw); // Для вывода в читаемом виде

Важные моменты

• md5 НЕ подходит для хранения паролей! Сейчас используют password_hash() и password_verify(), так как md5 легко взломать
• md5 всегда возвращает одинаковый результат для одной и той же строки
• Даже небольшое изменение в строке полностью меняет хеш
• md5 не шифрует данные, а только создает их отпечаток
• Для более надежного хеширования используют sha256, sha512 и другие алгоритмы

Вывод:

md5() — быстрый способ получить уникальный отпечаток строки или файла. Используйте для проверки целостности, генерации идентификаторов, но не для хранения паролей и секретных данных.

Web
CSS
JavaScript
HTML
C#
jQuery
PHP
Flash
Yii / Yii2
Java
Net
CMS
3D
Parallax
MySQL
Ajax
XML
SEO
FTP
JSON
Design
Python
Back-end
Front-end
ASP
Perl
Template
Domain
Hosting
Plugin
Browser
DNS
SVG
Effect
Опрос
Какой ИКС вашего сайта?







Авторизация
Логин:
Пароль: