php de dosya uzantısını almak istiyorum. yani "resim.jpg" deki "jpg" kısmını almak istiyorum. kullandığım metod şu:

$dosyaAdi = $_FILES["dosya"]["name"];
$uzanti = explode(".", $dosyaAdi);
$kactane = sizeof($uzanti);
$dosyaUzanti = $uzanti[1];

bu resim.jpg formundaki bir dosyanın uzantısını almama yetiyor.
ama sanırım dosya ismi "resim.okul.foto.1.jpg" olsaydı resim uzantısı olarak "okul" u alacaktı. bu dosyanın da uzantısını "jpg" alabilmem için $uzanti[1]; kısmını nasıl düzenleyebilirim? $uzanti[-1]; gibi bir şey yapsam dizideki en son nesneyi çekebiliyor muyum?

 

sizeof yazmışsın ama kullanmamışsın.

$kactane=sizeof($uzanti) - 1;
$dosyaUzanti=$uzanti[$kactane];

ya da

$file = pathinfo("resim.okul.foto.1.jpg");
echo $file[extension];

tuyra

Bu durumda

$dosya= pathinfo($_FILES["dosya"]["name"]);
$uzanti = $dosya[extension];

şeklinde de kullanılabilir di mi?

and justice erol

senin gittiğin yoldan şöyle olur:

$dosyaAdi = $_FILES["dosya"]["name"];
$parcalar = explode( ".", $dosyaAdi);
$dosyaUzanti = array_pop( $parcalar );

ya da:

$dosyaUzanti = $parcalar[ count( $parcalar ) - 1 ];

tabi şöyle bir kullanım daha temiz:

$dosyaAdi = $_FILES["dosya"]["name"];
$dosyaUzanti = pathinfo( $dosyaAdi, PATHINFO_EXTENSION );

blackdog

eyvallah, makbule geçti. şunu kullandım:
$dosyaUzanti = pathinfo( $dosyaAdi, PATHINFO_EXTENSION );

and justice erol
1

mobil görünümden çık