|
|
|
| Это продолжение темы http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=5848
Всем привет, помогите начинающему. Искал везде так и не нашёл поэто вот решил спросить.
У меня директория /text/ там все текстовые файлы со статьями. имена файлов a1.txt, a2.txt, a3txt..... при добавлении текстового файла в директорию скрипт считывает документы выстраивает их по дате создания и выводит заголовок и часть текста, заголовок формирую в ссылку для открытия документа полностью в соседней части страницы.
Вопрос: как сделать так, чтобы при добавлении через форму текста в новый документ, документу присваивалось имя +1, т.е. а9.txt, a10txt.... ? | |
|
|
|
|
|
|
|
для: cheops
(20.09.2005 в 12:08)
| | При помощи регулярных выражений следует обработать имя переменной и в файле и извлечь цифру.
<?php
$file = 'а9.txt';
preg_match("|[\d]+|i",$file,$out);
echo $out[0];
?>
|
Вы всё равно сканируете всю директорию - следует завести переменную которую сравнивать с полученной цифрой, если цифра больше переменной - присваивать ей значение. Таким образом к концу цикла у вас будет максимальное испльзуемое в имени файла значение. Останется только прибавить к нему единицу и сформировать имя нового файла.
PS Как вариант в таких случаях используют также время в UNIXSTAMP-формате (число секунд прошедшее с 1 янвая 1970 года), которое можно получить при помощи функции time().
<?php
$filename = time().".txt";
?>
|
Это также обеспечивает уникальное имя, если новые сообщения добавляются реже чем 1 сообщение в секунду. | |
|
|
|
|
|
|
|
для: cheops
(20.09.2005 в 12:17)
| | спасибо cheops, вы очень помогли мне... | |
|
|
|