2015-11-18 122 views

回答

6

你可以試試這個

$file = Input::file('upfile')->getClientOriginalName(); 

$filename = pathinfo($file, PATHINFO_FILENAME); 
$extension = pathinfo($file, PATHINFO_EXTENSION); 

echo $filename . ' ' . $extension; // 'qwe jpg' 
24

Laravel使用將由Input::file()方法返回的Symfony UploadedFile組件。

這還沒有得到以檢索文件名的任何方法,所以你可以使用PHP自身的功能pathinfo()

pathinfo(Input::file('upfile')->getClientOriginalName(), PATHINFO_FILENAME); 
+2

這應該是公認的答案。 –

1
preg_replace('/\..+$/', '', 'qwe.jpg') 

explode('.', 'qwe.jpg')[0] 
+1

只是一個小的通知,你的解決方案.tar.gz文件呢? ;) –

+0

最好的清潔,但在90%的案件工作,這取決於情況,如果它可能是一個正確的選擇 –

1

試試這個:

$fullName = Input::file('image')->getClientOrginalName(); 
    $extension = Input::file('image')->getClientOrginalExtension(); 
    $onlyName = explode('.'.$extension,$fullName); 

或Thi S:

$fullName = Input::file('image')->getClientOrginalName(); 
    $extension = Input::file('image')->getClientOrginalExtension(); 

    $fullNameLenght = strlen($fullName); 
    $extensionLenght = strlen($extension); 
    $nameLength = $fullNameLenght - ($extensionLength + 1); 
    $onlyName = strpos($fullName, 0, $nameLength); 
9

在Laravel 5.2

使用申請和它已經存在於別名數組中的應用程序文件

要獲取原始文件名

$request->file('upfile')->getClientOriginalName(); 

獲取文件名無延伸

basename($request->file('upfile')->getClientOriginalName(), '.'.$request->file('upfile')->getClientOriginalExtension()); 
2

我用這個代碼和工作在我的Laravel 5.2 *

$file=$request->file('imagefile'); 
$imgrealpath= $file->getRealPath(); 
$nameonly=preg_replace('/\..+$/', '', $file->getClientOriginalName()); 
$fullname=$nameonly.'.'.$file->getClientOriginalExtension(); 
1

這一個是很乾淨。

$文件名= PATHINFO($ fullFileName) '文件名'];

0

使用getClientOriginalName()獲取文件名;然後使用爆炸函數獲取的名稱和圖像格式,如下圖所示:

$image=Input::file('image'); $fullName=$image->getClientOriginalName(); $name=explode('.',$fullName)[0];

相關問題