Вопрос-Ответ по php

Печать RSS
6552
Кураторы темы:

М

Пришелец
0
3445. mocart, мeня б зa тakoй koд c if-aми в лaбe пpeпoд бы нa мecтe убил D
С

Землянин
0
3448, D Лан, разобралсяsmile ))
Д

Быдлокодер со стажем
0
NightStalker (4 Июля 2010 / 18:20)
3445. mocart, мeня б зa тakoй koд c if-aми в лaбe пpeпoд бы нa мecтe убил D
а вы там без ифов пишите?)
М

Пацак
0
Есть папка с файлами, нужно вывести их названия на страницу, как с помощью php это организовать, подскажите, пожалуйста.
K

Транклюкаторщик
0
51,
<?
function list_dir ($dirname){
if(file_exists($dirname)){
$d = opendir($dirname);
while($f = readdir($d)){
if($f{0}!== '.' && $f{0}!== '..'){
if(is_file("$dirname/$f")){$format = '(файл)';}elseif(is_dir("$dirname/$f")){$format = '(папка)';}
echo $f.' '.$format.'<br/>';
}}}
closedir($d);}
// пример использования:
echo list_dir('1');
?>
М

Пацак
0
3452. eGo, спасибо smile не подскажешь еще как отсортировать по номеру? у меня названия файлов 1,2,3... если ставить asort то выходит 1,10,100,2,20,200 и т.д., а нужно 1,2,3... и как выводить файлы только определенного формата
Изменил: Михаил (05.07.2010 / 13:55)
K

Транклюкаторщик
0
53,
<?
function ext($var){
return $ext=pathinfo($var, PATHINFO_EXTENSION);}

function list_dir ($dirname){

if(file_exists($dirname)){ 
$d = opendir($dirname); 
while($f = readdir($d)){ 
if($f{0}!== '.' && $f{0}!== '..'){ 
if(is_file("$dirname/$f")){$format = ext("$dirname/$f");}elseif(is_dir("$dirname/$f")){$format = 'папка';}
if($format == 'mp3'){
echo $f.' ('.$format.')<br/>'; 
}}}} 
closedir($d);} 
// пример использования: 
echo list_dir('1'); 

?>
под себя уже жумаю доделаешь.
для сортировки - natsort()
Изменил: KOZZ (05.07.2010 / 14:08)
М

Пацак
0
3454. eGo, с natsort() не выходит чего-то((
вставил natsort($f); перед closedir($d);} сортирует по прежнему как и asort
Изменил: Михаил (05.07.2010 / 14:13)
K

Транклюкаторщик
0
55, включи отчет об ошибках. там надо переделывать чтоб массив был, т.к. это функции для массивов

ツ ツ ツ
0
natsort сортирует массив, а тут его нет, можно либо в цикле формировать массив, потом сортировать его, и опять же пускать цикл для его вывода, а это лишнее действие, glob юзай, он сразу выдает массив

<?
$ArrayFile = glob("dir/*.{jpg,png}", GLOB_BRACE);
natsort($ArrayFile);
foreach($ArrayFile AS $File){
echo 'File name:'.basename($File);
echo 'File path:'.$File;
}
Изменил: Lugaro (05.07.2010 / 16:38)
Стикеры / Теги / Правила / Топ тем / Топ постов / Поиск