2014-05-16 2 views
0

Я пытаюсь вывести все .php-файлы на моем сайте на страницу. Мне удалось в определенной степени это сделать.Функция Scandir для вывода всех страниц .php на сайт - PHP

Мне удалось вывести все файлы, которые находятся в моем каталоге веб-сайта. К ним относятся текстовые файлы, файлы изображений, файлы .php и т. Д.

Я просто хочу, чтобы выходные файлы были .php и для них были гиперссылки.

Это в настоящее время мой код:

<?php 
$dir = '/home/website/allfiles'; 
$files = scandir($dir); 
echo "<pre>"; 
print_r($files); 
echo "</pre>"; 
?> 

Код выше просто печатает все файлы (.txt, .jpeg, .php и т.д.) в массиве листинга.

+1

Используйте [ 'Глоб()'] (http://www.php.net/ manual/en/function.glob.php). Вы можете фильтровать расширения файлов, которые хотите использовать/показать. Затем используйте тег 'href'. –

+1

, как сказал fred, вызов 'glob()' или, по крайней мере, 'if (pathinfo ($ files [$ i], PATHINFO_EXTENSION) == 'php') {...}'. –

ответ

1

В дополнение к моему комментарию: Вы можете использовать функцию glob() (PHP 4> = 4.3.0, PHP 5) и фильтровать расширения файлов, которые вы хотите использовать/показать.

Использование: GLOB_BRACE

GLOB_BRACE - Расширяет {а, Ь, с}, чтобы соответствовать 'A', 'B', или 'с'

Вот основной пример:

<?php 

$directory = "images/"; // Use your preferred folder 
$files = glob($directory . '*.{jpg,jpeg,png,gif,doc,ppt}', GLOB_BRACE); 

foreach($files as $file) 
{ 
    echo '<a href="'.$file.'">'.$file.'</a>' . "<br>"; 
} 

?> 

Если вы не хотите использовать имя файла в качестве показанного текста, вы может использовать общее слово, View file, например:

Просто замените: замены '.$file.' для View file

echo '<a href="'.($file).'">'.$file.'</a>' . "<br>"; 

с:

echo '<a href="'.$file.'">View file</a>' . "<br>"; 

Или, используя двойные кавычки, как обернутая эхо: (переворачивая котировки для "'.$file.'")

echo "<a href='".$file."'>View file</a>" . "<br>"; 

Чтобы открыть файл в новом окне/вкладке использовать target='_blank'

Пример:

echo "<a href='".$file."' target='_blank'>View file</a>" . "<br>"; 
Смежные вопросы