htmlcheap.com
С нами с 07.05.04
Сообщения: 6418
Рейтинг: 2072
|
Добавлено: 02/08/08 в 05:52 |
в дирректории может быть (а может и не быть) 1 файл .flv
нужно проверить есть ли такой и есть есть - получить его имя..
посоветуйте самый негеморный способ (дирректорий таких тысячи. делается при каждом обращении)
большое спасибо
|
|
|
|
programmer
С нами с 08.12.02
Сообщения: 7613
Рейтинг: 5760
|
Добавлено: 02/08/08 в 06:09 |
первое что пришло:
Код: |
if ($handle = opendir($cat)){
while (false !== ($file = readdir($handle))) {
if (strstr($file, ".flv")) {
$array_names[]=$file;
}
}
if($array_names){print_r($array_names);}else{echo "FLV files not found";}
|
это для одной директории $cat
|
|
|
|
С нами с 27.06.07
Сообщения: 289
Рейтинг: 247
|
Добавлено: 02/08/08 в 06:45 |
Код: | foreach (glob("path_to_dir/*.flv") as $filename) {
echo $filename;
} |
|
|
|
|
htmlcheap.com
С нами с 07.05.04
Сообщения: 6418
Рейтинг: 2072
|
Добавлено: 02/08/08 в 06:47 |
Sterx: немного не то..
Teacher-X: респектище
|
|
|
|
Гражданин планеты Земля
С нами с 30.03.03
Сообщения: 7217
Рейтинг: 2185
|
Добавлено: 02/08/08 в 07:07 |
just_beginner писал: |
Sterx: немного не то..
Teacher-X: респектище |
Гм, вообще-то оба примера по сути одно и тоже.
|
|
|
|
htmlcheap.com
С нами с 07.05.04
Сообщения: 6418
Рейтинг: 2072
|
Добавлено: 02/08/08 в 07:17 |
wMaster писал: | Гм, вообще-то оба примера по сути одно и тоже. |
я не силен в пхп. может по сути одно и то же.. но первый не заработал, второй заработал и кода меньше
|
|
|
|
htmlcheap.com
С нами с 07.05.04
Сообщения: 6418
Рейтинг: 2072
|
Добавлено: 02/08/08 в 07:18 |
а еще подскажите что добавить ко второму примеру чтобы писать чего на случай если нет видео файла?
|
|
|
|
Гражданин планеты Земля
С нами с 30.03.03
Сообщения: 7217
Рейтинг: 2185
|
Добавлено: 02/08/08 в 07:34 |
Эти примеры покажут только файлы которые существуют.
|
|
|
|
С нами с 27.06.07
Сообщения: 289
Рейтинг: 247
|
Добавлено: 02/08/08 в 07:38 |
вроде говорил, что файл всего один, тогда наверно можно вот так:
Код: |
if( list(, $value) = each(glob("path_to_dir/*.flv")) ) {
echo $value;
}else{
echo "хуй там кого";
}
|
|
|
|
|
htmlcheap.com
С нами с 07.05.04
Сообщения: 6418
Рейтинг: 2072
|
Добавлено: 02/08/08 в 14:22 |
Teacher-X писал: | вроде говорил, что файл всего один, тогда наверно можно вот так:
Код: |
if( list(, $value) = each(glob("path_to_dir/*.flv")) ) {
echo $value;
}else{
echo "хуй там кого";
}
| |
.flv файл будет один, кроме него будут html, jpg и т.д. вот нужно проверить есть ли он, и если есть получить имя..
|
|
|
|
С нами с 27.06.07
Сообщения: 289
Рейтинг: 247
|
Добавлено: 02/08/08 в 15:20 |
just_beginner писал: | .flv файл будет один, кроме него будут html, jpg и т.д. вот нужно проверить есть ли он, и если есть получить имя.. |
последний код должен это делать по идее, или нет?
|
|
|
|
С нами с 19.07.08
Сообщения: 110
Рейтинг: 218
|
Добавлено: 02/08/08 в 15:26 |
ну если файл flv гарантированно один то для ускорения работы скрипта и экономии памяти под него наверное так лучше сделать:
Код: |
<?
$dir = './';
$file = '';
if ($dh = opendir($dir)) {
while (($file = readdir($dh)) !== false)
if (strstr($file, '.flv'))
break;
closedir($dh);
if (!($file))
echo 'no flv files';
else
echo $file;
}
?>
|
|
|
|
|
htmlcheap.com
С нами с 07.05.04
Сообщения: 6418
Рейтинг: 2072
|
Добавлено: 02/08/08 в 15:39 |
Teacher-X писал: | последний код должен это делать по идее, или нет? |
что то он у меня ничего вообще не делает... первый вот делал если файл был...
|
|
|
|
htmlcheap.com
С нами с 07.05.04
Сообщения: 6418
Рейтинг: 2072
|
Добавлено: 02/08/08 в 15:41 |
SomeVar: во, заработало как надо
|
|
|
|
С нами с 11.06.03
Сообщения: 1266
Рейтинг: 950
|
Добавлено: 02/08/08 в 16:09 |
just_beginner писал: | SomeVar: во, заработало как надо |
До тех пор пока в каталоге не появится что-то вроде "xxxxx.flv.bak"
|
|
|
|
programmer
С нами с 08.12.02
Сообщения: 7613
Рейтинг: 5760
|
Добавлено: 02/08/08 в 16:19 |
Sha писал: | До тех пор пока в каталоге не появится что-то вроде "xxxxx.flv.bak" |
но вероятность этого стремится к нулю
|
|
|
|
С нами с 19.11.03
Сообщения: 3973
Рейтинг: 2362
|
Добавлено: 02/08/08 в 16:45 |
топикстатер у тебя подпись под ником очень в тему
|
|
|
|
htmlcheap.com
С нами с 07.05.04
Сообщения: 6418
Рейтинг: 2072
|
Добавлено: 03/08/08 в 08:05 |
xreload:
Sha: да не должно вроде ничего такого там появиться... и двух flv файлов недолжно тоже
|
|
|
|
С нами с 31.07.08
Сообщения: 40
Рейтинг: 18
|
Добавлено: 07/08/08 в 20:08 |
|
|
|
|
С нами с 11.06.03
Сообщения: 1266
Рейтинг: 950
|
Добавлено: 08/08/08 в 17:24 |
Кстати да.
Поместите любой файл в каталог. А .flv файл удалите. А если каталог пуст, то вообще по идее будет выдаваться '..'
|
|
|
|
С нами с 01.03.07
Сообщения: 304
Рейтинг: 223
|
Добавлено: 09/08/08 в 00:28 |
а зачем читать каталоги каждый раз ? что кеш в наше время уже не модно ?
частое чтение большого каталога убивает диск за полгода примерно
|
|
|
|