使用PHP计算两个路径的相对路径

<div class="codetitle"><a style="CURSOR: pointer" data="1298" class="copybut" id="copybut1298" onclick="doCopy('code1298')"> 代码如下:

<div class="codebody" id="code1298">


<?PHP
function relativePath($aPath,$bPath) {
$aArr = explode('/',$aPath); //explode函数用于切分字符串,返回切分后的数组,此处用'/'切分字符串
$bArr = explode('/',$bPath);
$aDiffToB = array_diff_assoc($aArr,$bArr); //array_diff_assoc()用于获取A数组与B数组之间元素的差集,Key和Value都不相同视为不同元素,此处返回在A数组中且与B数组不相同的元素
$count = count($aDiffToB); $path = '';
for($i = 0; $i < $count - 1; $i++){
$path .= '../';
} $path .= implode('/',$aDiffToB); //implode()用于使用指定字符串连接数组元素,此处返回用'/'连接数组元素后的字符串 return $path;
} echo relativePath('/a/b/c/d/a.PHP','/a/b/1/2/b.PHP');
?>



<FONT style="COLOR: #ff0000">页面输出
. ./. ./c/d/a.PHP

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...