В том случае, если посетитель выбрал в качестве требуемого действия переименование, то на странице запроса дополнительной информации ему пришлось ввести новые имена для тех файлов и папок, переименовать которые он пожелал. Сценарию же выполнения действия передалось два массива со старыми и новыми именами этих обьектов -$afl и $rfl соответственно.
if ($ren!="")
{
Переберем все элементы массива со старыми именами - $af 1. Поскольку для совершения собственно переименования для каждого элемента массива со старыми именами нам также потребуется элемент массива $rf 1 с новыми именами под тем же порядковым номером, то перебирать эти элементы будем подряд, по номерам - с помощью цикла for:
for ($i = 0; $i < sizeof($afl); $i++)
Если новое имя не совпадает со старым и не является пустой строкой...
if (($rfl[$i]!="")&($rfl[$i]!=$afl[$i]))
то можно переименовывать. Однако посетитель вполне может в новом имени указать символы, которые недопустимы для имен файлов - от пробелов до слэшей. Возвращать посетителя на этап ввода имени с выведением ему сообщения о недопустимых символах не будем - просто заменим все такие символы на знаки подчеркивания: "_". Тем более что такую замену можно совершить специальной командой PHP - strtr:
(Количество знаков подчеркивания в третьем параметре функции равно количеству указанных во втором недопустимых символов.)
Примечание:
Функция strtr("строка", "заменяемые символы", "заменяющие символы") заменяет в строке, указанной в ее первом параметре, символы, приведенные в строке в ее втором параметре, на символы из строки в ее третьем параметре, стоящие в этой строке на тех же местах, что и заменяемые символы в строке в ее втором параметре.
Если столь длинная фраза вас смутила, то можно сказать проще: во втором и в третьем параметрах функции приводятся строки, состоящие из определенных символов.
Функция просматривает строку в первом параметре символ за символом. Если очередной символ этой строки встречается и в строке во втором параметре, то функция: