今日の人気記事

  1. 指定した文字列以降の文字列を取得 - strstr()、strchr() - mb_strstr()
  2. Apache 2.4 のダウンロードとインストール - Windows10
  3. php.ini の設定
  4. ファイル名を変更 - ファイルを移動 - rename()
  5. continue - 繰り返し処理を飛ばす(スキップ)

パスからファイル名を取得 - basename()

スポンサーリンク

プログラミング言語PHPで、パスからファイル名を取得する関数 basename()を紹介します。

basename関数

string basename ( string $path [, string $suffix ] )
指定した相対パスから絶対パスを取得します。
引数
$path
ファイル名を取得するパスを指定します。パスは相対パスでも絶対パスでも、OKです。
$suffix
接尾語を指定します。
返り値
取得したファイル名を返します。接尾語を指定した場合は、接尾語を除いたファイル名を返します。

cf. » 親ディレクトリのパスを表示 - dirname()

サンプルコード

指定したファイルのパスからファイル名を取得するサンプルコードです。ファイル名を含まないパス、絶対パス・相対パスの挙動も確認しておきましょう。

basename ( パス )
<?php
echo basename("/Users/karuma/basename.php") ."\n";
echo basename("/Users/karuma/") ."\n";
echo basename(".") ."\n";
echo basename("../") ."\n";
echo basename("/") ."\n";
?>

実行結果です。

basename.php
karuma
.
..

このようにファイル名が返されています。ファイル名を含まないものの動きも確認できました。

サンプルコード - 接尾語を指定

次は接尾語を指定してみましょう。

basename ( パス, 接尾語 )
<?php
echo basename("/Users/karuma/basename.php", ".php") ."\n";
echo basename("/Users/karuma/basename.php", ".txt") ."\n";
?>

実行結果です。

basename
basename.php

このように指定した接尾語を含むパスの場合は、その接尾語が除かれた値が返されます。

関連記事(一部広告含む)