<?php
//設定報錯等級,如果是開源程序插件不需要設定
error_reporting(E_ERROR | E_PARSE);
//定義欲讀取的目錄路徑,方便演示,本程序讀取的是當前文件所在目錄
$path = '.';
//獲取文件列表數組
$files = ReadFolder($path);
//處理文件列表數組
foreach ($files as $value) {
//顯示文件鏈接
echo '<a href="' . $value . '">' . $value . '</a>';
//為方便查看,輸出一個 <br /> 換行符
echo '<br />';
}
/* 定義自定義函數 */
/**
* 獲取文件列表
*
* @param string $dir 欲讀取的目錄路徑
* @param boolean $mode 0:讀取全部;1:僅讀取文件;2:僅讀取目錄
* @return array
*/
❷ PHP讀取目錄下所有文件
php中讀取目錄下的文件名的方式確實不少,最簡單的是scandir,具體代碼如下:
$dir="./目錄名/";
$file=scandir($dir);
print_r($file);
❸ PHP怎麼遍歷一個文件夾下所有的文件,默認顯示第一個內容。
在 php 語言里,列出一個文件夾下所有的文件,最簡單的是使用 scandir 函數,示例如下:
<?php
$dir='/tmp';
$files1=scandir($dir);
print_r($files1);
?>
scandir 原型定義如下:
arrayscandir(string$directory[,int$sorting_order[,resource$context]])
第2個參數,可以將獲取的文件列表按升、降序進行排序。
❹ PHP讀取目錄下所有文件內容並顯示
<?php
function printFile($filepath)
{
//substr(string,start,length)函數返回字元串的一部分;start規定在字元串的何處開始 ;length規定要返回的字元串長度。默認是直到字元串的結尾。
//strripos(string,find,start)查找 "php" 在字元串中最後一次出現的位置; find為規定要查找的字元;start可選。規定開始搜索的位置
//讀取文件後綴名
//$filetype = substr ( $filename, strripos ( $filename, "." ) + 1 );
//判斷是不是以txt結尾並且是文件
#if ($filetype == "txt" && is_file ( $filepath . "/" . $filename ))
if ( is_file ( $filepath))
{
$filename=iconv("gb2312","utf-8",$filepath);
echo $filename."內容如下:"."<br/>";
$fp = fopen ( $filepath, "r" );//打開文件
#while (! feof ( $f )) //一直輸出直到文件結尾
$i = 1;
while ($i < 10)
{
$line = fgets ( $fp );
echo $line."<br/>";
$i = $i +1;
}
fclose($fp);
}
}
(此處空一行)
function readFileRecursive($filepath)
{
if (is_dir ( $filepath )) //判斷是不是目錄
{
$dirhandle = opendir ( $filepath );//打開文件夾的句柄
if ($dirhandle)
{
//判斷是不是有子文件或者文件夾
while ( ($filename = readdir ( $dirhandle ))!= false )
{
if ($filename == "." or $filename == "..")
{
//echo "目錄為「.」或「..」"."<br/>";
continue;
}
//判斷是否為目錄,如果為目錄遞歸調用函數,否則直接讀取列印文件
if(is_dir ($filepath . "/" . $filename ))
{
readFileRecursive($filepath . "/" . $filename);
}
else
{
//列印文件
printFile($filepath . "/" . $filename);
echo "<br/>";
}
}
closedir ( $dirhandle );
}
}
else
{
printFile($filepath . "/" . $filename);
return;
}
}
(此處空一行)
header("content-type:text/html;charset=utf-8");
#echo "Hello World"."<br/>";
$filepath = "C:/phpStudy/PHPTutorial/WWW/test/results"; //想要讀取的目錄
readFileRecursive($filepath )
?>
php還可以讀取文件夾下所有圖片,方法如下
hostdir=dirname(__FILE__).'/data/upload/admin/20170517/'; //要讀取的文件夾
(此處空一行)
$url = '/data/upload/admin/20170517/'; //圖片所存在的目錄
(此處空一行)
$filesnames = scandir($hostdir); //得到所有的文件
(此處空一行)
// print_r($filesnames);exit;
//獲取也就是掃描文件夾內的文件及文件夾名存入數組 $filesnames
(此處空一行)
$www = 'http://www.***.com/'; //域名
(此處空一行)
foreach ($filesnames as $name) {
$aurl= "<img width='100' height='100' src='".$www.$url.$name."' alt = '".$name."'>"; //圖片
echo $aurl . "<br/>"; //輸出他
❺ PHP 列出當前目錄下所有文件(自身別列出來)
1、列出當前目錄的文件、文件夾完整路徑
ls
-1
|awk
'{print
i$0}'
i=`pwd`'/'
(注意:這里
ls
後面那是個數字
1
而不是字母
l)
2、列出當前目錄及子目錄的文件、文件夾完整路徑
ls
-r
|awk
'{print
i$0}'
i=`pwd`'/'
2b)
列出當前目錄及子目錄下的文件夾完整路徑
ls
-fr
|
grep
/$
|
sed
"s:^:`pwd`/:"
3、用find實現,好像運行要慢些
find
/
-name
"*.*"
-exec
ls
{}
\;
4、遞歸列出當前目錄及子目錄名稱
ls
-fr
|
grep
/$
5、遞歸列出當前目錄及子目錄名稱,包括相關屬性
ls
-lr
|
grep
"^d"
#
drwxr-xr-x
3
idea
idea
4096
aug
2
2009
images
6、只列出當前目錄下的子目錄
用ls只列出子目錄
ls
-d
*/
❻ PHP怎麼讀取php所在文件夾下的圖片和mp3文件,並且顯示出來
<?php
$dir="./";//要獲取的目錄
echo"**********獲取目錄下所有文件和文件夾***********<hr/>";
//先判斷指定的路徑是不是一個文件夾
if(is_dir($dir)){
if($dh=opendir($dir)){
while(($file=readdir($dh))!=false){
if(getFileType($file)=="mp3"){
echo"mp3格式";
}
if(getFileType($file)=="jpg"||getFileType($file)=="png"||getFileType($file)=="gif"){
echo"圖片格式";
}
closedir($dh);
}
}
functiongetFileType($filename){
returnstrtolower(pathinfo($filename)['extension']);
}
?>
❼ php中如何讀取磁碟中的文件夾
可以用scandir來讀取給定路徑下的文件以及文件夾,請注意該函數不會顯示子文件夾下的文件;
如果要顯示所有的文件或者文件夾,建議用 一個循環來遍歷該路徑,使用is_dir來判斷是否是一個文件夾,is_file來判斷是否是一個文件;
❽ php獲取文件夾下所有文件名
function dir_file_handle($dir,$dir_handle,$file_handle,&$array=NULL) {
$array = array();
function circle($dir,$dir_handle,$file_handle,&$array){
$handle=opendir($dir);
while(($file=readdir($handle))!==false){
if($file!="." && $file!=".."){
if(is_dir("$dir/$file")){
//文件夾操作
eval($dir_handle);
circle("$dir/$file",$dir_handle,$file_handle,&$array);
}else{
//文件操作
eval($file_handle);
}
}
}
}
@circle($dir,$dir_handle,$file_handle,$array);
}
function list_dir_file($array) {
$indent = 0;
static $preindent = 0;
while (list($key,$value) = each($array)) {
$indent = count(explode('/', $key));
if ($indent == 1) {
$indent = $preindent;
}else {
$preindent = $indent;
}
$dirname = substr(strrchr($key, '/'), 1);
if (is_array($value)) {
echo str_repeat("", $indent)."|-$dirname<br>";
list_dir_file($value);
}else {
echo str_repeat("", $indent*2)."$value<br>";
}
}
}
dir_file_handle(
'./01',
'
if(is_null($array["$dir"])) {
$array["$dir"] = array();
}
if(is_null($array["$dir/$file"])) {
$array["$dir/$file"] = array();
}
',
'array_push($array["$dir"],$file);',
$array
);
list_dir_file($array);
❾ 如何用php讀取一個文件夾下的文件個數
$arr = scandir('文件夾路徑');
echo "文件個數為".count($arr)-2."個";
//這里要減去2