Функция генерации пароля
В наше время уже лучше пароль выдавать пользователю чем просить его ввести с клавиатуры, потому как найдутся такие которые введут "12345" или "qwerty" а потом будут спрашивать почему у них в аккаунте что-то случилось (кто то зашел под их логином и паролем).
function gen_pass($len = 8)
{
$symbols = 'abcdefghijkmnopqrstuvwzyx23456789'; // Строка допустимых символов
$max = strlen($symbols)-1;
$rez = '';
for ($i=0;$i<$len;$i++)
{
$rez .= $symbols[rand(0,$max)];
}
return $rez;
}
Функция рекурсивного удаления каталогов
Т.к при использовании функции rmdir невозможно удалить каталог в котором есть вложенные каталоги, то была написана вот такая функция, позволяющая удалить все. Передается 2 параметра (каталог, номер режима)
Режимы работы:
0 - удаляет все (и внутри) кроме указанного каталога
1 - удаляет все внутри и удаляет указанный каталог
2 - удаляет файлы, оставляя структуру каталогов
3 - удаляет только файлы из указанного каталога
/*
0 - удаляет все (и внутри) кроме указанный каталог
1 - удаляет все внутри и удаляет указанный каталог
2 - удаляет файлы, оставляя структуру каталогов
3 - удаляет только файлы из указанного каталога
*/
function megarmdir($dir,$mod=0,$step=0)
{
if (is_dir($dir)){
if($dh=opendir($dir)){
while (($file = readdir($dh)) !== false) {
if($file=='.' || $file=='..')continue;
if(is_dir($dir.'/'.$file)){
if($mod<3){
megarmdir($dir.'/'.$file,$mod,$step+1);
}
}else{
unlink($dir.'/'.$file);
}
}
closedir($dh);
}
}
else{
return 0;
}
if($step)
{
if($mod!=2)rmdir($dir);
}
else
{
if($mod==1)rmdir($dir);
}
}