Gå til innhold

function som finner filendelsen?


Anbefalte innlegg

Skrevet

Hei

 

Lurer på om det finnes (fins sikkert) en function som finner filendelsen (altså, noe som .jpg, .txt osv). Vet at dette er mulig med explode og array_reverse, men dette er ganske tungvint.

 

Takker for svar.

Videoannonse
Annonse
Skrevet (endret)

<?php

 

if( preg_match("/^.+\.(.*?)$/", $fil, $endelse) ){

echo $endelse[1];

} else {

echo $fil;

}

 

?>

Endret av Zic0
Skrevet

hmm, takk, men det finnes altså ikke en function (lignende på getimagesize[2])? Med andre ord, det finnes ikke en ferdig function for å finne filendelsen?

Gjest Slettet+6132
Skrevet

En måte å gjøre det på:

 

$filename = "somefile.version.5.rar";
$extension = explode(".", $filename);
$places = count($extension);
$extension_place = $places - 1;
$extension = $extension[$extension_place];

 

Da vil $extension være "rar".

Skrevet

takk. men det er nok enklere å gjøre det sånn da:

$file    = "foo.txt";
$fileend = explode(".",$file);
$fileend = array_reverse($fileend);
$fileend = $fileend[0];

Skrevet (endret)

<?php

function ending($fil)
{
   if (file_exists($fil)) {
       $ending = explode(".", $fil);
       $ending = array_reverse($ending);
       $ending = $ending[0];
       
       return $ending;
   } else {
       return false;
   }
}
?>

 

For og printe ut:

<?php
$fil = "fil.txt";
echo ending($fil);
?>

Endret av fredeil
Gjest Slettet+6132
Skrevet
...

5328132[/snapback]

 

At filen MÅ eksistere er da høyst unødvendig, siden du da vil måtte ha hele filbanen om filen ikke er i samme mappe som scriptet. Filen trenger ikke eksistere for å finne filendelsen fra en string ;)

Skrevet

Hehe, ja tenkte på det. :)

Men gidda ikke og endre ;)

 

<?php

function ending($fil)
{
       $ending = explode(".", $fil);
       $ending = array_reverse($ending);
       $ending = $ending[0];
       
       return $ending;
}
?>

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...