kuzmit42
Мастер
- Регистрация
- 9 Янв 2013
- Сообщения
- 132
- Реакции
- 31
- Автор темы
- #1
Хочу сделать листинг файлов папки. Есть скрипт который выводит все данные по файлам, имя, размер, дата, и т.д.
Но выводятся они в мативе, и я не могу привести их в нормальный вид. чтобы сделать таблицу.
Знания пхп очень слабые с массивами вообще не знаком.
Помогите пожалуйста что куда вставить чтобы ланные выводились в табличке. <tr><td></td></tr>
Скрипт прикрепил.
Путь к папке листинга вставляется в самом низу строкой "print_r(dir_list('W:/backup/file/')); "
Но выводятся они в мативе, и я не могу привести их в нормальный вид. чтобы сделать таблицу.
Знания пхп очень слабые с массивами вообще не знаком.
Помогите пожалуйста что куда вставить чтобы ланные выводились в табличке. <tr><td></td></tr>
Скрипт прикрепил.
Путь к папке листинга вставляется в самом низу строкой "print_r(dir_list('W:/backup/file/')); "
PHP:
<?php
function permission($filename)
{
$perms = fileperms($filename);
if (($perms & 0xC000) == 0xC000) { $info = 's'; }
elseif (($perms & 0xA000) == 0xA000) { $info = 'l'; }
elseif (($perms & 0x8000) == 0x8000) { $info = '-'; }
elseif (($perms & 0x6000) == 0x6000) { $info = 'b'; }
elseif (($perms & 0x4000) == 0x4000) { $info = 'd'; }
elseif (($perms & 0x2000) == 0x2000) { $info = 'c'; }
elseif (($perms & 0x1000) == 0x1000) { $info = 'p'; }
else { $info = 'u'; }
// владелец
$info .= (($perms & 0x0100) ? 'r' : '-');
$info .= (($perms & 0x0080) ? 'w' : '-');
$info .= (($perms & 0x0040) ? (($perms & 0x0800) ? 's' : 'x' ) : (($perms & 0x0800) ? 'S' : '-'));
// группа
$info .= (($perms & 0x0020) ? 'r' : '-');
$info .= (($perms & 0x0010) ? 'w' : '-');
$info .= (($perms & 0x0008) ? (($perms & 0x0400) ? 's' : 'x' ) : (($perms & 0x0400) ? 'S' : '-'));
// все
$info .= (($perms & 0x0004) ? 'r' : '-');
$info .= (($perms & 0x0002) ? 'w' : '-');
$info .= (($perms & 0x0001) ? (($perms & 0x0200) ? 't' : 'x' ) : (($perms & 0x0200) ? 'T' : '-'));
return $info;
}
function dir_list($dir)
{
if ($dir[strlen($dir)-1] != '/') $dir .= '/';
if (!is_dir($dir)) return array();
$dir_handle = opendir($dir);
$dir_objects = array();
while ($object = readdir($dir_handle))
if (!in_array($object, array('.','..')))
{
/*
print "
<tr>
<td>тип</td>
<td class=\"title\">
<a href=\"../../backup/file/$object\">$object</a>
</td>
<td>тут размер KB</td>
<td>тут права</td>
<td>тут дата</td>
</tr>
<!--<a href=\"../../backup/file/$file\">$file</a> <br />-->";
*/
$filename = $dir . $object;
$file_object = array(
'<p>',
'Имя:' => $object,
'Размер:' => filesize($filename),
'Права' => permission($filename),
'Тип:' => filetype($filename),
'Дата' => date("m.d.Y", filemtime($filename)),
'</p>'
);
$dir_objects[] = $file_object;
}
return $dir_objects;
}
?>
<?php
print_r(dir_list('W:/backup/file/'));
?>