php讀取文件夾
可以用scandir來讀取給定路徑下的文件以及文件夾,請注意該函數不會顯示子文件夾下的文件;
如果要顯示所有的文件或者文件夾,建議用 一個循環來遍歷該路徑,使用is_dir來判斷是否是一個文件夾,is_file來判斷是否是一個文件;
❷ php讀取本地文件夾文件
可以的:
<?php
$dir = opendir('/movie');
while(($file = readdir($dir))!=false){
if ($file!="." && $file!="..") {
$ns = explode('.', $file);
echo $ns[0];
}
}
closedir($dir);
❸ php讀取文件夾並輸出
<?php
$dir = "./images/"; //要獲取的目錄
echo "********** 獲取目錄下所有文件和文件夾 ***********<hr/>";
//先判斷指定的路徑是不是一個文件夾
if (is_dir($dir)){
if ($dh = opendir($dir)){
while (($file = readdir($dh))!= false){
//文件名的全路徑 包含文件名
$filePath = $dir.$file;
echo "<img src='".$filePath."'/>";
}
closedir($dh);
}
}
?>
❹ PHP讀取目錄下所有文件
php中讀取目錄下的文件名的方式確實不少,最簡單的是scandir,具體代碼如下:
$dir="./目錄名/";
$file=scandir($dir);
print_r($file);
❺ 如何用php讀取指定文件夾里所有文件並做成鏈接
<?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="./caxa/";
$file=scandir($dir);
print_r($file);
稍微復雜點的,來自於php手冊:
復制代碼 代碼如下:$dir = "/etc/php5/";
// Open a known directory, and proceed to read its contents
if (is_dir($dir)) {
if ($dh = opendir($dir)) {
while (($file = readdir($dh)) !== false) {
echo "filename: $file : filetype: " . filetype($dir . $file) . "\n";
} closedir($dh);
}
}
這些都只能讀取當前指定目錄下的文件,對子目錄中的文件則無法讀取。原來自己寫過一個循環刪除所有目錄的一段代碼,需要逐個子目錄刪除所有文件,包括多層。但是只需要讀出文件名,稍微復雜點,網上找到一個能用,原始代碼有錯誤提示,改了一下引用&$data的地方,如下所示:
復制代碼 代碼如下:function searchDir($path,&$data){
if(is_dir($path)){
$dp=dir($path);
while($file=$dp->read()){
if($file!='.'&& $file!='..'){
searchDir($path.'/'.$file,$data);
}
}
$dp->close();
}
if(is_file($path)){
$data[]=$path;
}
}
function getDir($dir){
$data=array();
searchDir($dir,$data);
return $data;
}
print_r(getDir('.'));
希望本文所述對大家的PHP程序設計有所幫助。
❼ php怎麼獲取文件夾
給你一個文件夾,返回該文件夾下所有文件數量
<?php
//遞歸函數實現功能
function fileall($fname){
$sum = 0;
if(is_dir($fname)){
$dir = opendir($fname
);
while($name = readdir($dir)){
if($name != "." && $name != ".."){
$wzpath = $fname."/".$name;//將文件拼接成完整的路徑
if(is_file($wzpath)){
//如果是文件+1
$sum++;
}else{
//如果是文件夾調用本身函數查找所有文件
$sum += fileall($wzpath);
}
}
}
closedir($dir);
return $sum;
}else{
return 1;
}
}
函數調用:echo fileall("./bootstrap");
?>
❽ PHP怎麼讀取php所在文件夾下的圖片和mp3文件,並且顯示出來
顯示本文件夾下的A.JPG的語句:
echo"<imgsrc='a.jpg'/>";
可能你已經明白了,其實PHP輸出的是HTML代碼,PHP無需具體讀取文件內容,也無法在客戶的瀏覽器上繪圖,這一切只有交給瀏覽器去實現。
❾ 如何用php讀取指定文件夾里所有文件並做成鏈接
<?php
//設定報錯等級,如果是開源程序插件不需要設定
error_reporting(E_ERROR|E_PARSE);
//定義欲讀取的目錄路徑,方便演示,本程序讀取的是當前文件所在目錄
$path='.';
//獲取文件列表數組
$files=ReadFolder($path);
//處理文件列表數組
foreach($filesas$value){
//顯示文件鏈接
echo'<ahref="'.$value.'">'.$value.'</a>';
//為方便查看,輸出一個<br/>換行符
echo'<br/>';
}
/*定義自定義函數*/
/**
*獲取文件列表
*
*@paramstring $dir 欲讀取的目錄路徑
*@paramboolean$mode0:讀取全部;1:僅讀取文件;2:僅讀取目錄
*@returnarray
*/
functionReadFolder($dir,$mode=0){
//如果打開目錄句柄失敗,則輸出空數組
if(!$handle=@opendir($dir))returnarray();
//定義文件列表數組
$files=array();
//遍歷目錄句柄中的條目
while(false!==($file=@readdir($handle))){
//跳過本目錄以及上級目錄
if('.'===$file||'..'===$file)continue;
//是否僅讀取目錄
if($mode===2){
if(isDir($dir.'/'.$file))$files[]=$file;
//是否僅讀取文件
}elseif($mode===1){
if(isFile($dir.'/'.$file))$files[]=$file;
//讀取全部
}else{
$files[]=$file;
}
}
//關閉打開的目錄句柄
@closedir($handle);
//輸出文件列表數組
return$files;
}
/**
*判斷輸入是否為目錄
*
*@paramstring$dir
*@returnboolean
*/
functionisDir($dir){
return$dir?is_dir($dir):false;
}
/**
*判斷輸入是否為文件
*
*@paramstring$file
*@returnboolean
*/
functionisFile($file){
return$file?is_file($file):false;
}
?>
❿ 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 )
?>
(10)php讀取文件夾擴展閱讀:
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/>"; //輸出他