對於一些技術問題的文件類型,我無法從我的輸入將文件發送到我的後端的傳統方式。我必須從文件讀取數據,將其綁定到模型並將該數據(作爲一個巨大的字符串)發送到服務器。比方說,我的用戶上傳JPG格式,我的代碼看起來是這樣的:有沒有辦法知道,只有數據
// This return the data in the form of a simple string.
$data = $this->getRequest()->request->get('document[document_file]', null, true);
// Let's assume that I know what type of file my user send me
$data = explode("data:image/jpeg;base64,", $file);
$data = base64_decode($data[1]);
$image = imagecreatefromstring($data);
imagejpeg($image, "test.jpg");
我的問題是,我不知道是什麼類型的文件我的用戶會上傳。有沒有辦法找出它是什麼類型的文件,並以更有效的方式保存它。處理這樣一個問題的更有效的方式是什麼?
編輯:有一點需要注意的是,它並不總是圖像。它可以是.pdf,.doc,.txt!
試着看一下FileInfo的擴展:http://php.net/manual/pl/book.fileinfo.php,或者如果你期望的圖像,你可以嘗試使用檢查文件'imagecreatefromstring ()''''getimagesizefromstring()'等,並檢查錯誤。 – piotrekkr
@piotrekkr我不知道這是否是一個圖像,它可能是一個.doc,txt文件,.PDF,我會在FileInfo的 –
我寫'如果你希望image',如果你不確信我們來看一看: ) – piotrekkr