ログイン
問題10

Pathを分解しよう

アイコン画像

問題10:Pathを分解しよう

3階層めにtestディレクトリを付けたパスを取得しよう

エディターのアイコンあらかじめエディタに書くコード

                $path = '/var/www/html/example.com/index.html';
¥PHP¥
              

ブラウザのアイコン期待する画面

/var/www/test/html/example.com/index.html

タグアイコン解答ソースコード

              $path = '/var/www/html/example.com/index.html';
$dir = dirname($path);
$arr = explode("/", $dir);
array_splice($arr, 3, 0, "test");
$dir = implode("/", $arr);
$path = $dir."/".basename($path);
echo $path;
¥PHP¥
            

コメントのアイコン解説

文字を途中に差し込むのは熟練者でも位置がずれたり文字が欠落するケースが多くデバッグに時間を要する。
そこで一度分解した後に戻すという手順を踏むようにしたい。

dirnameはディレクトリ名、basenameはファイル名をそれぞれ取得する関数だ。

まずはディレクトリ名のみ取得し区切り文字を使って配列化する。
配列化することによって指定の位置に簡単に差し込むことが可能になる。

差し込んだ後は配列から文字列に戻して最後にファイル名を付けて完成だ。
ファイル名の前に区切り文字を付け忘れないようにしよう。
ログインして解答を見る
1.PHPについての説明と表示
続きの動画を見たい方は公式LINEから「PHP」と送信すると動画が見れます。
PHPを学ぶなら現役エンジニア監修「甲賀コース」
キャンペーン

閉じる