意外と何度も調べてしまうのでメモ
echo pathinfo('./aaa/bbb/ccc/ddd.jpg', PATHINFO_EXTENSION);
結果
jpg
echo pathinfo('./aaa/bbb/ccc/ddd.jpg', PATHINFO_DIRNAME);
結果
./aaa/bbb/ccc
echo pathinfo('./aaa/bbb/ccc/ddd.jpg', PATHINFO_BASENAME);
結果
ddd.jpg
echo pathinfo('./aaa/bbb/ccc/ddd.jpg', PATHINFO_FILENAME);
結果
ddd
$p = pathinfo('./aaa/bbb/ccc/ddd.jpg');
print_r($p);
// 実行結果
Array
(
[dirname] => ./aaa/bbb/ccc
[basename] => ddd.jpg
[extension] => jpg
[filename] => ddd
)
ただし、拡張子がないときは $p['extension'] がセットされて帰ってこないので注意。
basename ("ファイル名","サフィックス");
とします。
$test=basename ( "hogehoge.jpg",".jpg" );
関数を定義するのがいいでしょう(か?)
function _delete_extention( $string='' ){
$p = pathinfo($string);
return basename ( $string, ".{$p['extension']}" );
}