2011-01-30 3 views
1

Можно создать дубликат:
How to extract a file extension in PHP ?Как получить расширение файла?

Например, если у меня есть путь (порожденный моим torrent_info_gen) -

Driver Genius Professional Edition 10.0.0.526/Driver Genius Professional Издание 10.0.0.526.exe

How shou ld Я получаю расширение файла в пути! Я также хочу, чтобы иметь путь и имя файла, которые будут проявляться по-разному, таким образом:

Путь: (Путь к файлу)

Имя файла: (Имя файла)

Расширение: (Расширение файла)

Может кто-нибудь мне помочь! Пожалуйста !!!!!

Заранее благодарен!

+0

@Mark Cidade: Хотя вопрос название подразумевает только расширение, они ищут дополнительную информацию. не совсем дубликат, на другой пост отвечает только 1/3 их вопроса. –

+0

Существует достаточно информации на другой странице (т. Е. Ссылка на документы pathinfo), чтобы ответить на этот вопрос. –

+0

Тогда зачем задавать вопрос? Я имею в виду, что документы полностью охватывают это ... О да, ссылка; поэтому другие с той же проблемой могут иметь решение. –

ответ

2

Что об этом:

$str = "Driver Genius Professional Edition 10.0.0.526/Driver Genius Professional Edition 10.0.0.526.exe"; 

    $info = pathinfo($str); 

    var_dump($info['dirname']); 
    var_dump($info['filename']); 
    var_dump($info['extension']); 

Дает:

string 'Driver Genius Professional Edition 10.0.0.526' (length=45) 
string 'Driver Genius Professional Edition 10.0.0.526' (length=45) 
string 'exe' (length=3) 
+0

Просто справедливое предупреждение, 'filename' применимо только> = 5.2.0 и может опускать расширение файла. –

2
$info = pathinfo($filename); 

echo "Path: ".$info['dirname']; 
echo "Filename: ".$info['basename']; 
echo "Extension: ".$info['extension']; 

Документация на pathinfo.

+0

спасибо! Мне это нравится! –

+0

@ Дивия: Вы очень желанны, и добро пожаловать в ТАК. ;-) –

0

очевидное решение уже размещена так вот smthing отличается

 $file = 'C:/foo/bar/do.exe'; 
    echo dirname($file); 
    $ext = array_pop(explode('.',$file)); 
    $filename = basename($file); 
$filenameWithoutExtension = basename($file,'.' . $ext); 

    echo $ext; 
    echo $filename; 
Смежные вопросы