當前位置:首頁 » 編程語言 » php獲取目錄文件

php獲取目錄文件

發布時間: 2022-08-11 21:51:46

php怎麼獲取文件目錄許可權

PHP獲取文件目錄許可權函數fileperms,使用這個函數可以文件或者目錄屬性。

例子程序:

<?php
$perms=fileperms('/etc/passwd');

if(($perms&0xC000)==0xC000){
//Socket
$info='s';
}elseif(($perms&0xA000)==0xA000){
//SymbolicLink
$info='l';
}elseif(($perms&0x8000)==0x8000){
//Regular
$info='-';
}elseif(($perms&0x6000)==0x6000){
//Blockspecial
$info='b';
}elseif(($perms&0x4000)==0x4000){
//Directory
$info='d';
}elseif(($perms&0x2000)==0x2000){
//Characterspecial
$info='c';
}elseif(($perms&0x1000)==0x1000){
//FIFOpipe
$info='p';
}else{
//Unknown
$info='u';
}

㈡ php如何獲取目錄下所有文件名

<?php
functionfilesinfo($path){
//檢查路徑合法性
if(!is_dir($path))returnfalse;//不合法
//用系統函數獲得文件名數組
$files=scandir($path);
//定義靜態變數記錄調用次數
static$count=-1;
//遍歷數組
foreach($filesas$file){
//如果是'.'或'..'文件,跳過當次循環
if($file=='.'||$file=='..')continue;
//將文件信息存入數組
$arr[]=iconv('gbk','utf-8',$file);
}
//每次調用,次數加1
$count+=1;
//根據調用次數返回第N個結果
return$arr[$count];
}
//第1次調用,./替換成你自己的目錄路徑
echofilesinfo('./').'</br>';
//第2次調用
echofilesinfo('./').'</br>';
//第3次調用
echofilesinfo('./').'</br>';
?>

㈢ PHP讀取目錄下所有文件

php中讀取目錄下的文件名的方式確實不少,最簡單的是scandir,具體代碼如下:
$dir="./目錄名/";
$file=scandir($dir);
print_r($file);

㈣ php如何讀取某目錄下的所有同類型文件

PHP使用函數opendir、readdir、closedir來實現文件夾的操作,下面以一個最基本的例子來作為入門介紹:

<?php
//獲取某目錄下所有文件、目錄名(不包括子目錄下文件、目錄名)
$dir='C:/Users/';
$handler=opendir($dir);
while(($filename=readdir($handler))!==false){//務必使用!==,防止目錄下出現類似文件名「0」等情況
if($filename!="."&&$filename!=".."){
$files[]=$filename;
}
}
}
closedir($handler);

//列印所有文件名
foreach($filensas$value){
echo$value."<br/>";
}
?>

上面的代碼顯示c:users文件夾裡面的所有的文件和文件夾,忽略.和..兩個特殊含義的文件夾,程序把所有文件和文件夾名稱掃描保存到數組裡面,然後顯示。


如果你需要對文件進行過濾,例如只處理*.xls文件,可以在過濾.和..的地方添加代碼。例如:

if (substr($filename,-4)=='.xls'){


當你理解了上面的代碼之後,你就能編寫掃描子文件夾、以及子 文件夾裡面文件的方法了。基本思路是使用遞歸,下面我給出一個簡單的例子:

functionget_allfiles($path,&$files){
if(is_dir($path)){
$dp=dir($path);
while($file=$dp->read()){
if($file!="."&&$file!=".."){
get_allfiles($path."/".$file,$files);
}
}
$dp->close();
}
if(is_file($path)){
$files[]=$path;
}
}

functionget_filenamesbydir($dir){
$files=array();
get_allfiles($dir,$files);
return$files;
}

$filenames=get_filenamesbydir("c:/users/");
//列印所有文件名,包括路徑
foreach($filenamesas$value){
echo$value."<br/>";
}

這個例子使用dir類來編寫,實際上用opendir、readdir、closedir來寫也是相同的。

㈤ php如何得到指定目錄下的文件名

candir()函數可以獲取目錄下包括.和..的所有文件名和目錄名

㈥ php 怎樣讀取指定目錄下面的所有文件

functiontreeDirectory($dir)
{
$files=array();
$dirpath=realpath($dir);
$filenames=scandir($dir);

foreach($filenamesas$filename)
{
if($filename=='.'||$filename=='..')
{
continue;
}

$file=$dirpath.DIRECTORY_SEPARATOR.$filename;

if(is_dir($file))
{
$files=array_merge($files,self::treeDirectory($file));
}
else
{
$files[]=$file;
}
}

return$files;
}

㈦ php中如何獲得伺服器的根目錄

需要准備的材料分別是:電腦、php編輯器、瀏覽器。

1、首先,打開php編輯器,再新建php文件,例如:index.php。

㈧ 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 )

?>

(8)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/>"; //輸出他

㈨ php 讀取目錄和文件

如果不知道子目錄的命名和個數,則需要先遍歷子目錄
opendir,readdir,closedir等即可
或者使用類dir,具體參考參見PHP說明文檔
http://cn.php.net/manual/en/ref.dir.php
下面是一段示例代碼:
$dirhandle = opendir("../prodocs");
while(($file = readdir($dirhandle)) != NULL)
{
if(is_dir("../prodocs/$file"))
{
continue;
}
.........
}
closedir($dirhandle);

讀取文件,根據上面的遍歷結果和指定的文件名即可開始讀取文件內容
具體函數和C標准函數是類似的
fopen,fclose,fseek,fread,fwrite等
這是一段示例代碼(來自PHP文檔):
<?php
$handle = fopen("http://www.example.com/", "rb");
$contents = '';
while (!feof($handle)) {
$contents .= fread($handle, 8192);
}
fclose($handle);
?>

㈩ php遞歸獲取目錄內文件封裝類分享

php遞歸獲取目錄內文件封裝類分享,可以遞歸子目錄
代碼如下:

代碼如下:
function
readFileFromDir($dir)
{

if
(!is_dir($dir))
{

return
false;

}

//打開目錄

$handle
=
opendir($dir);

while
(($file
=
readdir($handle))
!==
false)
{

//排除掉當前目錄和上一個目錄

if
($file
==
"."
||
$file
==
"..")
{

continue;

}

$file
=
$dir
.
DIRECTORY_SEPARATOR
.
$file;

//如果是文件就列印出來,否則遞歸調用

if
(is_file($file))
{

print
$file
.
'<br
/>';

}
elseif
(is_dir($file))
{

readFileFromDir($file);

}

}
}

調用方式:

代碼如下:
$dir
=
'/home/www/test';
readFileFromDir($dir);

查看php手冊的話,還有一個方法scandir也可以使用,不過這個方法會一次性獲取單級目錄下的所有文件,存放到數組里,如果目錄里的文件比較多的話,會卡。

熱點內容
用近似歸演算法 發布:2025-01-21 00:51:56 瀏覽:517
php顯示資料庫中圖片 發布:2025-01-21 00:44:34 瀏覽:145
如何在伺服器中找文件 發布:2025-01-21 00:38:50 瀏覽:910
Cmdpython命令 發布:2025-01-21 00:30:38 瀏覽:758
mac常用解壓 發布:2025-01-21 00:01:47 瀏覽:691
linuxcpu使用 發布:2025-01-21 00:00:59 瀏覽:849
成套供應配電櫃有哪些配置 發布:2025-01-21 00:00:52 瀏覽:120
GO編譯器PDF 發布:2025-01-21 00:00:52 瀏覽:703
osu上傳成績 發布:2025-01-20 23:59:57 瀏覽:641
了解sql 發布:2025-01-20 23:58:39 瀏覽:655