Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/8: Рейтинг темы: голосов - 8, средняя оценка - 4.88
1 / 1 / 1
Регистрация: 16.04.2016
Сообщений: 10

Чтение имени файлов PHP

16.04.2016, 19:19. Показов 1750. Ответов 14
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Дрязья нужна помощь, я новоичок в php и на форуме, вообщем суть проблемы есть папка в
ней файлы вот такого содержания:
auto-20160414-194659-de_inferno.bz2
auto-20160414-172807-de_dust2.bz2
auto-20160414-150757-de_dust2.bz2
и т.д
нужно вывести на сайте список файлов но! нужно расшифровать имя файла
тоесть вывести список в таблицу примерно так:

________________________________________ ___________________________
тип записи | дата | время | карта | формат | ссылка |
________________________________________ ___________________________
auto | 14/04/2016 | 19:46 | de_inferno | bz2 | Скачать |
auto | 14/04/2016 | 17:28 | de_dust2 | bz2 | Скачать |
auto | 14/04/2016 | 15:07 | de_dust2 | bz2 | Скачать |

вся информация есть в имени файла auto-20160414-150757-de_dust2
никак немогу сделать, прошу помощи!
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
16.04.2016, 19:19
Ответы с готовыми решениями:

Чтение файлов PHP
Всем привет, недавно начал учить php и появилась одна мысля, надеюсь, вы дадите мне ответ на следующий вопрос. Я создаю скрипт поиска...

Чтение Excel файлов PHP скриптом
Привет. Нашёл здесь пример чтения Excel файлов PHP скриптом. Попытался реализовать, но выводится вот такая фигня вместо цифр в таблице: ...

PHP на IIS: разрешение на чтение и запись файлов.
Я в настройках iis поставил разрешение на чтение и запись файлов. Но почему-то, когда я в скрипте открываю файл, чтобы в него дописать,...

14
Эксперт PHP
 Аватар для Kerry_Jr
3106 / 2591 / 1219
Регистрация: 14.05.2014
Сообщений: 7,236
Записей в блоге: 1
16.04.2016, 19:37
Лучший ответ Сообщение было отмечено f00nt как решение

Решение

f00nt, пробуйте. Писал без проверок, поэтому если появятся - ошибки выкладывайте
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
$files = array_diff(scandir('ваша_папка'), array('.', '..'));
echo '<table><tr><td>Тип записи</td><td>Дата</td><td>Время</td><td>Карта</td><td>Формат</td><td>Ссылка</td></tr>';
foreach ($files as $file)
{
    $name_parts =  explode('.', $file);
    $name = explode('-',$name_parts[0]);
    $ext = $name_parts[1];
    echo '<tr>';
    foreach($name as $parts)
        echo '<td>'.$parts.'</td>';
    echo '<td>'.$ext.'</td><td><a href="ссылку_вставите">Скачать</a></td></tr>';
    
}
echo '</table>';
1
1 / 1 / 1
Регистрация: 16.04.2016
Сообщений: 10
16.04.2016, 20:07  [ТС]
Все работает!! Большое вам спасибо Kerry_Jr
PS пропустили скобки на 11 стороке вконце

Добавлено через 18 минут
еще вопрос, возможно ли разбить на переменные каждый пункт: тип записи, дата, время ....?
0
Эксперт PHP
 Аватар для Kerry_Jr
3106 / 2591 / 1219
Регистрация: 14.05.2014
Сообщений: 7,236
Записей в блоге: 1
16.04.2016, 20:38
Цитата Сообщение от Kerry_Jr Посмотреть сообщение
PHP
1
2
3
4
5
6
$name = explode('-',$name_parts[0]);
$ext = $name_parts[1];
echo '<tr>';
foreach($name as $parts)
    echo '<td>'.$parts.'</td>';
echo '<td>'.$ext.'</td><td><a href="ссылку_вставите">Скачать</a></td></tr>';
PHP
1
2
3
4
5
6
7
8
9
10
list($auto, $date, $time, $map) = explode('-', $name_parts);
    $ext = $name_parts[1];
    echo '<tr>
               <td>'.$auto.'</td>
               <td>'.$date.'</td>
               <td>'.$time.'</td>
               <td>'.$map.'</td>
               <td>'.$ext.'</td>
               <td><a href="ссылка">Скачать</a></td>
             </tr>';
Так?
0
1 / 1 / 1
Регистрация: 16.04.2016
Сообщений: 10
16.04.2016, 20:58  [ТС]
Kerry_Jr да в таком виде, только дату разбить на: день,месяц,год и часы на часы, минуты у меня сейчас выходит так:
Миниатюры
Чтение имени файлов PHP  
0
Эксперт PHP
 Аватар для Kerry_Jr
3106 / 2591 / 1219
Регистрация: 14.05.2014
Сообщений: 7,236
Записей в блоге: 1
16.04.2016, 21:16
f00nt, после строки
PHP
1
$ext = $name_parts[1];
вставьте
PHP
1
2
3
$date = substr($date, 0, 4).'-'.substr($date, 4, 2).'-'.substr($date, 6);
$date = date("d.m.Y", strtotime($date));
$time = substr($time, 0, 2).':'.substr($time, 2, 2).':'.substr($time, 4);
0
1 / 1 / 1
Регистрация: 16.04.2016
Сообщений: 10
16.04.2016, 21:48  [ТС]
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
$files = array_diff(scandir('./demofile'), array('.', '..'));
echo '
<table class="table table-bordered">
<thead>
    <tr>
      <th>Тип записи</th>
      <th>Дата</th>
      <th>Время</th>
      <th>Карта</th>
      <th>Формат</th>
      <th>Ссылка</th>
    </tr>
  </thead>
  <tbody>
';
foreach ($files as $file)
{
    $name_parts =  explode('.', $file);
    list($auto, $date, $time, $map) = explode('-', $name_parts);
    $ext = $name_parts[1];
    $date = substr($date, 0, 4).'-'.substr($date, 4, 2).'-'.substr($date, 6);
    $date = date("d.m.Y", strtotime($date));
    $time = substr($time, 0, 2).':'.substr($time, 2, 2).':'.substr($time, 4);
    echo '<tr>
               <td>'.$auto.'</td>
               <td>'.$date.'</td>
               <td>'.$time.'</td>
               <td>'.$map.'</td>
               <td>'.$ext.'</td>
               <td><a href="/demofile/'.$file.'">Скачать</a></td>
             </tr>';
    
}
echo '</table>';
Warning: explode() expects parameter 2 to be string, array given in E:\home\localhost\www\modules\demo\conte nt.php on line 20

если я все правильно сдела
0
Эксперт PHP
 Аватар для Kerry_Jr
3106 / 2591 / 1219
Регистрация: 14.05.2014
Сообщений: 7,236
Записей в блоге: 1
16.04.2016, 22:09
Цитата Сообщение от f00nt Посмотреть сообщение
PHP
1
list($auto, $date, $time, $map) = explode('-', $name_parts);
PHP
1
list($auto, $date, $time, $map) = explode('-', $name_parts[0]);
0
1 / 1 / 1
Регистрация: 16.04.2016
Сообщений: 10
16.04.2016, 22:11  [ТС]
теперь
Warning: Invalid argument supplied for foreach() in E:\home\localhost\www\modules\demo\conte nt.php on line 35

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
<?php
$files = array_diff(scandir('./demofile'), array('.', '..'));
echo '
<table class="table table-bordered">
<thead>
    <tr>
      <th>Тип записи</th>
      <th>Дата</th>
      <th>Время</th>
      <th>Карта</th>
      <th>Формат</th>
      <th>Ссылка</th>
    </tr>
  </thead>
  <tbody>
';
foreach ($files as $file)
{
    $name_parts =  explode('.', $file);
    list($auto, $date, $time, $map) = explode('-', $name_parts[0]);
    $ext = $name_parts[1];
    $date = substr($date, 0, 4).'-'.substr($date, 4, 2).'-'.substr($date, 6);
    $date = date("d.m.Y", strtotime($date));
    $time = substr($time, 0, 2).':'.substr($time, 2, 2).':'.substr($time, 4);
    echo '<tr>
               <td>'.$auto.'</td>
               <td>'.$date.'</td>
               <td>'.$time.'</td>
               <td>'.$map.'</td>
               <td>'.$ext.'</td>
               <td><a href="ссылка">Скачать</a></td>
             </tr>';
    
    echo '<tr>';
    foreach($name as $parts)
        echo '<td>'.$parts.'</td>';
    echo '<td>'.$ext.'</td><td><a href="/demofile/'.$file.'">Скачать</a></td></tr>';
    
}
echo '</table>';
?>
0
16.04.2016, 22:12

Не по теме:

f00nt, 1.6 еще популярна чтоле?

0
1 / 1 / 1
Регистрация: 16.04.2016
Сообщений: 10
16.04.2016, 22:19  [ТС]
простите, удалите последнее сообщение, нечайно оставил кусок кода, щас все работает отлично
0
Эксперт PHP
 Аватар для Kerry_Jr
3106 / 2591 / 1219
Регистрация: 14.05.2014
Сообщений: 7,236
Записей в блоге: 1
16.04.2016, 22:20
Цитата Сообщение от f00nt Посмотреть сообщение
PHP
1
2
3
4
5
6
7
8
9
10
11
12
echo '<tr>
    <td>'.$auto.'</td>
    <td>'.$date.'</td>
    <td>'.$time.'</td>
    <td>'.$map.'</td>
    <td>'.$ext.'</td>
    <td><a href="ссылка">Скачать</a></td>
</tr>';
echo '<tr>';
foreach($name as $parts)
    echo '<td>'.$parts.'</td>';
echo '<td>'.$ext.'</td><td><a href="/demofile/'.$file.'">Скачать</a></td></tr>';
Замените на
PHP
1
2
3
4
5
6
7
8
echo '<tr>
    <td>'.$auto.'</td>
    <td>'.$date.'</td>
    <td>'.$time.'</td>
    <td>'.$map.'</td>
    <td>'.$ext.'</td>
    <td><a href="/demofile/'.$file.'">Скачать</a></td>
</tr>';
0
1 / 1 / 1
Регистрация: 16.04.2016
Сообщений: 10
16.04.2016, 22:21  [ТС]
maruo, это в основном для csgo и css v87 у cs 1.6 выходное имя демок другое
0
1 / 1 / 1
Регистрация: 16.04.2016
Сообщений: 10
16.04.2016, 22:32  [ТС]
Kerry_Jr,снова большое спасибо за помошь, сейчас все работает так как я задумал(скриншот)
я перепробовал много функций file, file_get_contents и т.д результата не было, мне бы не хватило знанний такое написать.
Миниатюры
Чтение имени файлов PHP  
0
1 / 1 / 1
Регистрация: 16.04.2016
Сообщений: 10
17.04.2016, 22:54  [ТС]
Kerry_Jr, на данный момент новые демки выводяться внизу списка, возможено ли сменить сортировку что бы новые файлы были в начале списка? сейчас на сайт в час поступает минимум 8 демок с 8 серверов, через дней 10 новую демку будет тяжело найти
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
17.04.2016, 22:54
Помогаю со студенческими работами здесь

Чтение файла, чтение названия папки где находится файл, запись данных на PHP
Допустим у нас есть структура с папками типа Large -&gt; Vehicles -&gt; Firetruck_0 В этой папке лежит файл формата .dat Что нужно сделать? ...

PHP. Загрузка файлов на сервер. Максимальная длинна имени файла
Здравствуйте уважаемые коллеги. :hi Расскажу о своей ситуации для общего рассмотрения. Итак: FreeBSD 8.2, Веб-сервер апач 2_2, php 5.x....

Как можно добавить слово к имени всех файлов в папке, перед и после основного имени
Мне нужно поменять имена группы файлов в папке, добавить к ним слово, в начало о конец исходного имени. При этом нужно чтобы это...

Поиск файлов по части имени \ имени
var SR: TSearchRec; Folder: String; begin Folder := 'D:\'; Folder := IncludeTrailingPathDelimiter(Folder); if...

Создание папок по имени файлов и перемещение этих файлов в созданные папки
Господа, прошу помощи. В батниках полный ноль Имеется папка с множеством файлов, скриншот во вложении Эти файлы относятся к...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Новые блоги и статьи
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru