12

If I have a code like this:

$file = basename($filename); 

How do I get the file extension of $file? The variable $file could contain any kind of file, like index.php or test.jpeg.

PeeHaa
  • 69,318
  • 57
  • 185
  • 258

2 Answers2

38

Use the pathinfo() function:

$path_parts = pathinfo('/www/htdocs/index.html');

echo $path_parts['dirname'], "\n";
echo $path_parts['basename'], "\n";
echo $path_parts['extension'], "\n";
echo $path_parts['filename'], "\n";

or simply:

echo pathinfo($file, PATHINFO_EXTENSION);

You can of course look for the last "." in the filename and get everything after (relatively easy) but why reinvent the wheel?

cletus
  • 599,013
  • 161
  • 897
  • 938
5
pathinfo($filename, PATHINFO_EXTENSION);
IonuČ› G. Stan
  • 169,171
  • 18
  • 186
  • 199