ディレクトリパスとファイル名を連結し、ファイルパスを作成するサンプルコードを掲載しています。.Net Framework での Path.Combine メソッドと同等の動作をさせています(なっていないかもしれませんが、そのときはすいません)。
スポンサーリンク
パスを連結するサンプルスクリプト
ディレクトリパスとファイル名を連結する場合に重要なことは、ディレクトリパスの最後尾が Unix 系 OS の場合ですと “ / ” で終了しているか否かにかかわらずキレイに連結させることです。
以下にパスを連結するサンプルを示します。下記は Windows 上で実行した結果になりますので、DIRECTORY_SEPARATOR は ” \ ” となります。詳細は実行結果を参照ください。
function pathCombine($dir, $file) { /* * 文字列の最後のスラッシュまたはバックスラッシュを除去し、 * ファイル名を連結する */ return rtrim($dir, '\\/') . DIRECTORY_SEPARATOR . $file; } var_dump(pathCombine('/path/to///////', 'file')); // string '/path/to\file' (length=13) var_dump(pathCombine('/path/to', 'file')); // string '/path/to\file' (length=13) var_dump(pathCombine('/path/to/', 'file')); // string '/path/to\file' (length=13) var_dump(pathCombine('D:\\path\\to\\', 'file')); // string 'D:\path\to\file' (length=15) var_dump(pathCombine('D:\\path\\to', 'file')); // string 'D:\path\to\file' (length=15)