[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Почему выходит из цикла?
Set_
Идея - создать каталог с текущей датой, если такой есть то создать каталог с датой и приписанной единичкой.

$today = date(Y_m_d);
$path = "../test/".$today;
$i = 1;
while ($i == 0)
{
if(!is_dir($path)){
mkdir($path);
$i = 0;
}
else {
$path = $path."_".$i;
$i++;
}
}


r3al
не знаю почему у тебя, но так работает
p.s: не буду я больше умничать, он в конец приписывает $i к последнему каталогу
т.е.
2013_05_07
2013_05_07_1
2013_05_07_1_2
2013_05_07_1_2_3
etc

$today = date(Y_m_d);
$path = $today;
$i = 1;
while ($i != 0)
{
if(!is_dir($path)){
mkdir($path);
break;
}
else {
$path = $path."_".$i;
$i++;
}

}
Set_
Ага, я заметил. Сейчас поработаю над лишней припиской. Интересно почему у меня не работало. Спасибо за подсказку.
Set_
Если кому готовое решение пригодится )

$today = date(Y_m_d);
$path = "../test/".$today;
$i = 1;
while ($i != 0)
{
if(!is_dir($path)){
mkdir($path);
break;
}
else {
$path1 = $path."_".$i;
if(!is_dir($path1)) {
mkdir($path1);
break;
}
$i++;
}

}

r3al
я не поспел за тобой =\

$path_name = date('Y_m_d');
$i=0;

while(true) {
if ( !is_dir($path_name) ) {
mkdir($path_name);
break;
} else {
$path_name1 = $path_name . '_' . $i;
if ( !is_dir($path_name1) ) {
mkdir($path_name1);
break;
}
$i++;
}
}

killer8080
$path = '../test/'.date('Y_m_d');
$dir = $path;
$i = 0;
while(file_exists($dir))
$dir = $path.'_'.++$i;
mkdir($dir);
Set_
Решение класс!
Короче и подходит под мои цели больше чем мы придумали с r3al
killer8080
Цитата (Set_ @ 7.05.2013 - 20:40)
Короче и

можно еще на одну строчку короче
$dir = $path = '../test/'.date('Y_m_d');

user posted image
r3al
угу, я всегда считал что file_exists надо именно к файлам применять, почитал в доке, оказалось не обязательно.)
Valick
Цитата
Идея - создать каталог с текущей датой, если такой есть то создать каталог с датой и приписанной единичкой.

Опишите пожалуйста практическое применение этой идеи.


_____________
Стимулятор ~yoomoney - 41001303250491
Set_
Пишу для себя сайт на котором зарегистрированные пользователи будут создавать статьи и новости и мне кажется удобным хранить изображения к статьям в своих папках, нежели они будут лежать общей кучей в одной папке. Также будет удобно при загрузке картинок - если это будет происходить через какой нибудь редактор типа spaw или fckeditor где они смогут шариться только по каталогу своей статьи. Единственный момент сейчас осталось как то придумать как в редакторе каждый раз указывать на нужный каталог, создаваемого материала статьи.

Да и этот скрипт нужен для того что бы создавался новый каталог если уже кто то сегодня уже разместил статью. Сначала хотел создавать папки с названием статей, но подумав решил что с датами меньше мороки и точно не будет повторов.
nugle
Set_
не совсем верный подход, потому что пути до изображения все равно прописываются в БД, а следовательно лаконичней все изображения размещать в одной папке, а чтобы изображения все не смешивались делаешь имена картинкам f_(id_user)_(microtime) и все
Valick
nugle, большое количество файлов в одной папке грубо говоря плохо.
Но и заставлять пользователя самому клепать папки, тоже не дело. Все должно иметь границы дозволенного. Да и создавая для пользователя "типа папку", не факт, что она будет на диске физически.
Хранение большого количества файлов - это старая проблема и универсальных решений практически нет, тут нужен глубокий анализ самой логики сайта. Ну а что бы было что анализировать, нужно чтобы хоть что-то было smile.gif
За основу можно взять алгоритм любой галлереи который покажется оптимальным, благо в инете их полно.


_____________
Стимулятор ~yoomoney - 41001303250491
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.