ホームページ > php教程 > php手册 > $a を基準とした $b の相対パスを見つけるための PHP コード

$a を基準とした $b の相対パスを見つけるための PHP コード

WBOY
リリース: 2016-06-13 12:14:08
オリジナル
1389 人が閲覧しました

PHP 面接の質問:
$a = '/a/b/c/d/e.php'; $b = '/a/b/12/34/c.php'; // $a に対する $b の相対パスは ../../c/d である必要があります

php インタビューの質問への回答:

コードをコピー コードは次のとおりです。


function getRelative($a,$b) {
$arr =explode("/",$a); explode( "/",$b);
$c = count($arr)-2;
$d = count($brr)-2;
//2 を引く理由は次のとおりです。ファイル名
の後ろに 1 つはありません。//1 つは、配列のインデックスが 0 から始まり、配列の最初の次元の数より 1 つ少ないことです。
$e = ($c>$ d) ? $c: $d;
$str1 = $str2 =
for ($j=0;$j$cur_a = isset( $arr[$j] ) ? $arr[$j] : '';
$cur_b = isset($brr[$j]) ?
if ($ cur_a == $cur_b) {
続行;
} else {
if ($j {
$str1.='/'.$cur_a; 🎜>}
if ($j {
$str2.="../";
}
}
}
return $ str2.substr($str1 ,1,strlen($str1))
}


ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート