Описание функции wp_unique_filename()
Функция wp_unique_filename() генерирует уникальное имя файла, проверяя наличие уже существующих файлов в указанной директории. Она используется, когда необходимо предотвратить перезапись существующих файлов с одинаковыми именами.
Функция поддерживает добавление номера к имени файла для создания уникального наименования.
Параметры
$upload_dir
Тип: string
Обязательный: Да
Описание: Путь к директории загрузки, в которой будет проверяться наличие файлов
$filename
Тип: string
Обязательный: Да
Описание: Имя файла, для которого необходимо сгенерировать уникальное имя
Возвращаемое значение
Тип: string
Описание: Уникальное имя файла, которое можно использовать для загрузки
Возможные значения:
• Уникальное имя файла с добавленным номером если файл с таким именем уже существует
• Оригинальное имя файла если оно уникально
Примеры использования
Генерация уникального имени файла из базового имени
$unique_filename = wp_unique_filename('/uploads/2023/10/', 'image.png');
// Примерный вывод: 'image.png'
Если ‘image.png’ уже существует, будет возвращено ‘image-1.png’
Генерация уникального имени файла при наличии уже существующего файла
$unique_filename = wp_unique_filename('/uploads/2023/10/', 'document.pdf');
// Примерный вывод: 'document-2.pdf'
Если ‘document.pdf’ уже существует, будет возвращено ‘document-1.pdf’
Безопасность
Валидация входных данных: Функция проверяет корректность переданных параметров
Санитизация: Параметры очищаются перед использованием
Рекомендации: Убедитесь, что путь к директории безопасен и не позволяет доступ к нежелательным файлам
— Связанные функции
Обрабатывает загрузку файла и возвращает информацию о загруженном файле
Загружает файл и возвращает информацию о загруженном файле
— Хуки
Фильтрует уникальное имя файла перед возвращением
— Примечания
– Ограничения
Функция не проверяет доступные права на запись в директорию
– Частые проблемы
- Ошибка при отсутствии прав на директорию
- Проблемы с именами файлов, содержащими специальные символы