2016-07-15 23 views
10

Tôi đã cố gắng lấy tiện ích từ tệp được tải lên, tìm kiếm trên google, tôi không nhận được kết quả nào.Tải tiện ích mở rộng hình ảnh từ tệp được tải lên trong Laravel

Các tập tin đã tồn tại trong một con đường:

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

Bây giờ, Làm thế nào tôi có thể nhận được phần mở rộng của tập tin này trên?

Sử dụng lĩnh vực đầu vào tôi có thể nhận được phần mở rộng như thế này:

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

Cảm ơn.

Trả lời

9

Bạn có thể sử dụng pathinfo() chức năng được xây dựng vào PHP cho rằng:

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

Hoặc chính xác hơn, bạn có thể vượt qua một tùy chọn nhận được nó trực tiếp;

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

Các Laravel cách

Hãy thử điều này:

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

Cảm ơn, @Alfredo EM. Tôi đã thử nhưng chỉ nhận được "". Các giải pháp trên hoạt động tốt. –

+0

$ extension = \ File :: extension ('/ uploads/categories/featured_image.jpg') thực sự không hoạt động = (? –

+0

Tôi nhận được val trống. Nên làm việc? –

5

Nếu bạn chỉ muốn mở rộng, bạn có thể sử dụng pathinfo:

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

Tuy nhiên, một cách khác để làm điều đó:

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

này là dành cho 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

Tested trong laravel 5,5

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

Cảm ơn bạn đã dành thời gian để đóng góp một câu trả lời. Đó là vì những người bạn hữu ích như chính mình mà chúng tôi có thể học cùng nhau như một cộng đồng Dưới đây là một vài lời khuyên về cách làm cho câu trả lời của bạn tuyệt vời: [Làm thế nào để viết một câu trả lời hay] (https://stackoverflow.com/help/how-to-answer). – Brien

Các vấn đề liên quan