国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > PHP > 正文

PHP文件操作之獲取目錄下文件與計(jì)算相對路徑的方法

2024-05-04 23:42:07
字體:
供稿:網(wǎng)友
這篇文章主要介紹了PHP文件操作技巧之獲取目錄下文件與計(jì)算相對路徑的方法,其中獲取目錄下文件方面分為包含子目錄和不包含子目錄兩種情況,需要的朋友可以參考下
 

獲取目錄下文件

1、獲取目錄下文件,不包括子目錄

//獲取某目錄下所有文件、目錄名(不包括子目錄下文件、目錄名)   $handler = opendir($dir);   while (($filename = readdir($handler)) !== false) {//務(wù)必使用!==,防止目錄下出現(xiàn)類似文件名“0”等情況     if ($filename != "." && $filename != "..") {         $files[] = $filename ;       }     }   }   closedir($handler);     //打印所有文件名 foreach ($filens as $value) {   echo $value."<br />"; } 

2、獲取目錄下所有文件,包括子目錄

function get_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;   } }    function get_filenamesbydir($dir){   $files = array();   get_allfiles($dir,$files);   return $files; }    $filenames = get_filenamesbydir("static/image/"); //打印所有文件名,包括路徑 foreach ($filenames as $value) {   echo $value."<br />"; } 

 

計(jì)算兩個(gè)文件之間的相對路徑方法
php 計(jì)算兩個(gè)文件之間的相對路徑方法

例如:
文件A 的路徑是 /home/web/lib/img/cache.php
文件B的路徑是 /home/web/api/img/show.php
那么,文件A相對于文件B的路徑是 ../../lib/img/cache.php,即文件B 訪問 文件A的相對路徑。

function getRelativePath

<?php /** 計(jì)算path1 相對于 path2 的路徑,即在path2引用paht1的相對路徑 * @param String $path1 * @param String $path2 * @return String */ function getRelativePath($path1, $path2){   $arr1 = explode('/', $path1);   $arr2 = explode('/', $path2);    // 獲取相同路徑的部分   $intersection = array_intersect_assoc($arr1, $arr2);    $depth = 0;    for($i=0,$len=count($intersection); $i<$len; $i++){     if(!isset($intersection[$i])){       $depth = $i;       break;     }   }    // 將path2的/ 轉(zhuǎn)為 ../,path1獲取后面的部分,然后合拼   $tmp = array_merge(array_fill(0, count($arr2)-$depth-1, '..'), array_slice($arr1, $depth));    $relativePath = implode('/', $tmp);    return $relativePath; } ?> 

demo

<?php $path1 = '/home/web/lib/img/cache.php'; $path2 = '/home/web/api/img/show.php';  echo getRelativePath($path1, $path2); // ../../lib/img/cache.php ?> 
 


注:相關(guān)教程知識閱讀請移步到PHP教程頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 鄢陵县| 盐边县| 营口市| 江山市| 泰顺县| 平原县| 德钦县| 伊金霍洛旗| 洞头县| 二连浩特市| 都匀市| 临安市| 桂阳县| 肇庆市| 长白| 巴彦县| 全南县| 吉林省| 玛纳斯县| 盐山县| 舟曲县| 万载县| 巴青县| 灵台县| 汪清县| 平度市| 图们市| 舞钢市| 长白| 永德县| 自贡市| 桐庐县| 石河子市| 阿拉善右旗| 屏东县| 汶川县| 顺义区| 宁津县| 新野县| 贵港市| 开阳县|