php を絶対パスに変換する方法: 1. PHP サンプル ファイルを作成します; 2. 「関数 sub_rel2abs(string $in_rel, string &$out_abs) {...}」を通じて相対パスを変換します。メソッドを絶対パスにするだけです。
この記事の動作環境: Windows 7 システム、PHP バージョン 7.4、DELL G3 コンピューター
php を次の形式に変換する方法絶対パス?
PHP 相対パスを絶対パス realpath に変換します
* 相対パス->絶対パス realpath
relative path $c_abs = realpath($ss_rel); if ($c_abs === false) { $i_rtn = -1; } else { $ss_rel = $c_abs; $i_rtn = 0; } $lpc++; } // while (count($sv_path)>0) // normal ending if (0===$i_rtn) { $out_abs = $ss_rel; // set converted path } return $i_rtn; } // test $inDir = "/Users/Mch/Code/php/Directory"; is_dir($inDir) || mkdir($inDir, 0777, true); $wd = __DIR__; chdir($inDir); $out = ""; echo sub_rel2abs("../../../eclipse-workspace/blog.zip", $out).PHP_EOL; echo $out.PHP_EOL; chdir($wd); @rmdir($inDir);
output:
0 /Users/Mch/eclipse-workspace/blog.zip
ここに直接リアルパスで十分ですが、なぜわざわざ行う必要がありますか?
* 絶対パス -> 相対パス
= count($a) || $j >= count($b)) { throw new Exception('$j out of range'); } for ($i = $j; $i >= 0; $i--) { if (strcmp($b[$i], $a[$i])!==0) { return false; } } return true; }; // 找到a,b数组元素相同的下标 while (array_pop($a)) { $i = count($a)-1; if (isset($b[$i])) { if ($sliceEquals($a, $b, $i)) { break; } } array_push($d, ".."); } // 从首个不同元素开始 for ($i+=1; $i < count($b); $i++) { array_push($d, $b[$i]); } return ".".DIRECTORY_SEPARATOR.implode(DIRECTORY_SEPARATOR, $d); }
推奨学習: 「PHP ビデオ チュートリアル 」
以上がPHPを絶対パスに変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。