Задача: сгенерировать уникальное имя файла (уникальную строку) средствами PHP
Решение:
$file_name = md5(uniqid()); // уникальное имя файла
md5 — вычисляет MD5 хэш строки используя алгоритм MD5. Возвращает 32-значное шестнадцатеричное число (например, cc2bd8f09bb88b5dd20f9b432631b8ca1).
В качестве строки ему передается результат выполнения функции uniqid(), которая возвращает уникальный идентификатор с префиксом на основе текущего времени в микросекундах.
Если нужно имя короче 32 символов, можно воспользоваться substr(md5(uniqid()), 0, 8).
Более сложный вариант, создаст 32-символьный идентификатор (128-битное 16-ричное число), который очень трудно повторить:
$file_name = md5(uniqid(rand(),1)); // уникальная строка