有沒有辦法將一個base64圖像字符串添加到$_FILES
數組(您上傳文件時獲得的數組)?基本上,我想僞造base64字符串的文件上傳。 base64字符串來自電子郵件附件。我不希望使用file_get_contents()
,因爲我想將圖像作爲二進制圖像保存在數據庫中。我不需要上傳,但我確實需要它是$_FILES
陣列的一部分。
回答
上傳是一種將文件內容從客戶端(通常是網頁瀏覽器)發送到服務器的方式。這聽起來像你已經得到了你需要的服務器上的數據(用PHP),所以你不需要上傳它。
您可以使用
base64_decode()
將其從base64轉換爲直接文件內容。如果你需要它作爲你的服務器上的文件,你可以使用像
file_put_contents()
這樣的東西將它保存爲一個新的文件。如果您嘗試使用
$_FILE
陣列中上傳的文件執行其他操作,請提供更多詳細信息。不管它是什麼,你都不需要真正上傳文件。
的$_FILES
陣列實際上並不包含該文件的內容 - 它包含其中的內容已保存的文件名。
如果你必須使用$_FILES
陣列(以便重新使用現有的類,例如),你需要使用file_put_contents()
保存一個新的臨時文件,然後手動添加一個條目的$_FILES
陣列指向該臨時文件(就像修改任何其他數組一樣)。完成後不要忘記刪除臨時文件 - 這通常由PHP自動處理,但如果您手動創建文件,則必須手動刪除它。
儘管我強烈建議重構或爲您的課程提供替代接口。您不應該假裝該文件已上傳,只是將其保存到數據庫中。
就像我說的,我不希望它file_put_contents ...因爲我需要它「上傳」到數據庫,而不是在base64中。所以我去解碼,所以它在二進制/圖像。我希望它在$ _FILES數組中。 –
'$ _FILES'數組,也沒有上傳與數據庫有任何關係。 '$ _FILES'數組只是一種訪問從瀏覽器發送給您的文件內容的方式。你已經獲得了文件的內容,所以你不需要'$ _FILES'數組。 – jcsanyi
我建立了一個php類,它將$ _FILES數組中的文件添加到數據庫中,它創建一個哈希,等等。我知道我不需要它,我只是想''_FILES'數組 –
- 1. AngularJS:添加base64圖像到數組
- 2. JavaScript:您可以將圖像添加到數組嗎?
- 3. 我可以將一組ArrayList添加到單個ArrayList中嗎?
- 4. 我可以添加圖像到d3js圖嗎?
- 5. 您可以將內聯base64編碼圖像添加到Mandrill模板嗎?
- 6. 我可以將藝術家圖像添加到Android MediaStore嗎?
- 7. 我可以添加一個EventHandler到一個字符串嗎?
- 8. 我可以用CCMenuItemSprite添加一個CCMenu到一個spritebatchnode嗎?
- 9. 我可以在javascript中追加一個數組到'formdata'嗎?
- 10. 我可以添加一個uiprogressbar到uibutton
- 11. 我可以將數組存儲到另一個數組中嗎?
- 12. 我可以添加數組到android按鈕嗎?
- 13. 我可以添加鏈接到JS數組嗎?
- 14. 將Base64圖像添加到gmail
- 15. JCheckBox組件可以添加到JComboBoxes嗎?
- 16. 我可以處理base64編碼圖像的水印嗎?
- 17. 添加一個鏈接到一個數組中的圖像
- 18. 我可以添加滾動視圖到這個Xml嗎?
- 19. 我可以添加一個RadGrid到NestedViewTemplate
- 20. 我可以將一個節點添加到樹而不添加到dataProvider中嗎?
- 21. 我們可以通過CATiledLayer添加一個新圖層嗎?
- 22. 我可以通過Javascript函數將圖像添加到HTML主體嗎?
- 23. 我可以像這樣投射一個數組嗎?
- 24. 我可以將Parametercollection添加到另一個Parametercollection嗎?
- 25. 我可以添加一個導航控制器到ModalViewController嗎?
- 26. css3,我可以添加其他類到一個類嗎?
- 27. 我可以添加一個jQuery的動畫到updateprogress模板嗎?
- 28. 我可以添加一個子菜單到md-tooltip嗎?
- 29. 我可以將IBActions添加到NSArray嗎?
- 30. 我可以將JInternalFrames添加到JPanel嗎?
你在哪裏有base64字符串?在客戶端在JavaScript? – jcsanyi
請提供更多的上下文 - 誰在上傳文件? – jcsanyi
base64字符串來自電子郵件附件。所以PHP。 @jcsanyi –