2016-07-15 110 views
10

Ho cercato di ottenere l'estensione da un file caricato, cercando su google, non ho ottenuto risultati.Ottieni un'estensione di immagine da un file caricato in Laravel

Il file esiste già in un percorso:

\Storage::get('/uploads/categories/featured_image.jpg); 

Ora, Come posso ottenere l'estensione di questo file di cui sopra?

Uso campi di input che posso ottenere l'estensione in questo modo:

Input::file('thumb')->getClientOriginalExtension(); 

Grazie.

risposta

9

È possibile utilizzare la funzione pathinfo() integrato in PHP per questo:

$info = pathinfo(storage_path().'/uploads/categories/featured_image.jpg'); 
$ext = $info['extension']; 

O, più conciso, è possibile passare un opzione ottieni direttamente;

$ext = pathinfo(storage_path().'/uploads/categories/featured_image.jpg', PATHINFO_EXTENSION); 
13

Il modo laravel

Prova questo:

$foo = \File::extension($filename); 
+0

Grazie, @Alfredo EM. Ho provato ma ho solo "". La soluzione sopra funziona bene. –

+0

$ extension = \ File :: extension ('/ uploads/categories/featured_image.jpg') davvero non funziona = (? –

+0

Sto diventando vuoto val. Dovrebbe funzionare? –

5

Se si desidera solo l'estensione, è possibile utilizzare pathinfo:

$ext = pathinfo($file_path, PATHINFO_EXTENSION); 
4

Ancora un altro modo per farlo:

//Where $file is an instance of Illuminate\Http\UploadFile 
$extension = $file->getClientOriginalExtension(); 
+0

questo è per laravel v 5 –

2
//working code from laravel 5.2 

public function store(Request $request) 
{ 
      $file = $request->file('file'); 
      if($file) 
      { 
        $extension = $file->clientExtension(); 
      } 
      echo $extension; 
} 
0

testato in laravel 5.5

$extension = $request->file('file')->extension(); 
+0

Grazie per aver trovato il tempo di dare una risposta. È grazie a colleghi utili come te che siamo in grado di imparare insieme come comunità Ecco alcuni suggerimenti su come rendere grande la risposta: [Come scrivere una buona risposta] (https://stackoverflow.com/help/how-to-answer). – Brien

Problemi correlati