php無限遍歷文件夾示例分享
最近在能php目錄操作,搞了一個(gè)目錄無限遍歷:
使用的函數(shù)有:
isset()判斷某個(gè)變量是否定義
chdir() 將當(dāng)前目錄改變?yōu)橹付ǖ哪夸洝?/P>
opendi()打開目錄。
readdir()讀取目錄。
getcwd()獲取當(dāng)前目錄。
還用到了for if GET傳值 大概就這些東東:
下面是代碼:
<?php
if(isset($_GET['id']))//判斷是否傳值
{
$s=str_replace(' ','+',$_GET['id']);
$s=base64_decode($s);//接受傳遞的值 值一般是要打開的目錄的絕對路勁
chdir($s);//切換到要打開的目錄
}
$a=opendir('.');//打開當(dāng)前目錄
while(false!==($c=readdir($a)))//循環(huán)遍歷目錄內(nèi)容的文件名
{
if(is_dir($c))//判斷是目錄還是文件
{
if($c=='.')
{
}
else
{
if($c=='..')
{
$w=base64_encode(substr(getcwd(),0,strrpos(getcwd(),'\\')));//當(dāng)前路徑加上目錄名 就是目錄的絕對路徑
echo "上一級"."<a href='6.php?id=$w'>打開</a><br />";//當(dāng)點(diǎn)擊打開時(shí)將要打開的絕對路徑傳遞出去 用chdir 切換到要打開的目錄下
}else
{
$w=base64_encode(getcwd().'\\'.$c);//當(dāng)前路徑加上目錄名 就是目錄的絕對路徑
echo "$c"."<a href='6.php?id=$w'>打開</a><br />";//當(dāng)點(diǎn)擊打開時(shí)將要打開的絕對路徑傳遞出去 用chdir 切換到要打開的目錄下
}
}
}
else
{
echo "$c 不是目錄<br />";
}
}
?>
相關(guān)文章
thinkphp5加layui實(shí)現(xiàn)圖片上傳功能(帶圖片預(yù)覽)
這篇文章主要介紹了thinkphp5加layui實(shí)現(xiàn)圖片上傳功能(帶圖片預(yù)覽)的相關(guān)資料,需要的朋友可以參考下2023-03-03
thinkPHP模板中for循環(huán)與switch語句用法示例
這篇文章主要介紹了thinkPHP模板中for循環(huán)與switch語句用法,結(jié)合實(shí)例形式分析了for循環(huán)與switch語句的具體功能、定義與具體使用技巧,需要的朋友可以參考下2016-11-11
2個(gè)自定義的PHP in_array 函數(shù),解決大量數(shù)據(jù)判斷in_array的效率問題
大家可能都用過in_array來判斷一個(gè)數(shù)據(jù)是否在一個(gè)數(shù)組中,一般我們的數(shù)組可能數(shù)據(jù)都比較小,對性能沒什么影響,所以也就不會(huì)太在意2014-04-04
Symfony2實(shí)現(xiàn)從數(shù)據(jù)庫獲取數(shù)據(jù)的方法小結(jié)
這篇文章主要介紹了Symfony2實(shí)現(xiàn)從數(shù)據(jù)庫獲取數(shù)據(jù)的方法,結(jié)合實(shí)例形式總結(jié)分析了常用的Symfony數(shù)據(jù)庫查詢技巧,需要的朋友可以參考下2016-03-03

