- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Переиграть и победить: как анализировать конкурентов для продвижения сайта
С помощью Ahrefs
Александр Шестаков
В 2023 году Одноклассники пресекли более 9 млн подозрительных входов в учетные записи
И выявили более 7 млн подозрительных пользователей
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
У меня в папке x лежат где-то 10к картинок. Их названия примерно такие "klsd231kjbb.jpg". Надо эти картинки переименовать в такой вид:"1.jpg", "2.jpg" и т.д. Подскажите, пожалуйста, как это можно сделать на PHP?
P.S. Очень желательно, чтобы самому можно было задать номер, с которого бы начиналось переименование. Например:"345.jpg" и дальше до "10345.jpg".
Примерно так:
set_time_limit(0);
$start = 1;
if ($dir = opendir("/"))
{
while (false !== ($filename = readdir($dir)))
{
if ($filename!="." && $filename!="..")
{
rename ($dir."/".$filename, $start.".jpg");
$start++;
}
}
Писал без проверки, для теста лучше проверь как работает скрипт на нескольких файлах.
Примерно так:
set_time_limit(0);
$start = 1;
if ($dir = opendir("group1"))
{
while (false !== ($filename = readdir($dir)))
{
if ($filename!="." && $filename!="..")
{
rename ($dir."/".$filename, $start.".jpg");
$start++;
}
}
}
Писал без проверки, для теста лучше проверь как работает скрипт на нескольких файлах.
Ваш вариант выдает ошибку: "Warning: rename(Resource id #2/1.jpg,group1/1.jpg) [function.rename]: No such file or directory" . В чем дело, хз.
У меня работает такой вариант:
<?
set_time_limit(0);
$start = 1;
if ($dir = opendir("group1"))
{
while (false !== ($filename = readdir($dir)))
{
if ($filename!="." && $filename!="..")
{
rename ("group1/".$filename,"group1/". $start.".jpg");
$start++;
}
}
}
?>
Т.е. когда в rename первый аргумент вписан руками.
А вообще, большое спасибо вам за помощь!
т.к. $dir вот этим
получает указатель на папку, а не строкувую переменную, как хотят использовать тут
Объявите $dir в самом начале и все будет ок.
тогда $dir = opendir($dir_name);
и rename ($dir_name."/".$filename,$dir_name."/". $start.".jpg");