0
使用base64解碼圖像後,我在pathinfo處收到錯誤Array to string conversion
。嘗試將我的文件放入diretory時發生錯誤。我需要保持圖像的名稱。PHP:如何在使用base64解碼後正確使用pathinfo
順便說一句我的圖像文件來自JS DOM
var formG = new FormData();
for(var i=0; i<imageTrust.length;i++){
formG.append('file_multiImage[]', imageTrust[i]);
}
if(isset($_POST['file_multiImage'])){
$multi_image = $_POST['file_multiImage'];
foreach ($multi_image as $key => $value) {
$staticName = $event_id.'conNo'.$finalContestantNum;
$data = str_replace('data:image/jpeg;base64,', '', $value);
$data = str_replace(' ', '+', $data);
$data = base64_decode($data);
$file = pathinfo($staticName . PATHINFO_EXTENSION); //Error occurs here
file_put_contents($theDir.'/'. $file, $data);
}
}
陣列結果
Array(
[0] => data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQA
[1] => data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEAlgCWAAD
[2] => data:image/jpeg;base64,/9j/4AAQSkZJRgABAgAAAQABAAD/7QC
)
//I did not just continue strings are too long
首先你最好[閱讀手冊的文件上傳](http://php.net/manual/en/features.file-upload.php),因爲你已經犯了很多基本的錯誤處理$ _FILES數組或者而不是處理$ _FILES數組 – RiggsFolly
@RiggsFolly我認爲我的問題是不完整的我的圖像來自dom(data:image)然後我解碼它base64 –
你的'pathinfo()'有一個句號,而不是逗號分隔函數參數。 – Scuzzy