我有一種情況,一個Web服務器發佈一個JSON數組,其中包含一些參數以及其中的文檔數據。我得到的數據,內容類型和文件名。我將這個JSON轉換爲一個關聯數組,以便我可以使用它。下面給出了轉換後的關聯數組的一個例子。在PHP中寫入JSON到DOC文件
[dealer] => Array
(
[fullName] => John Doe
[email] => [email protected]
[resume] => Array
(
[file] => Array
(
[data] => UEsDBBQABgAIAAAAIQCVRr6H0AEAAB8IAAATAAgCW0NvbnRlbnRfVHlwZXNdLnhtbCCiBAIooAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC0VU1v4bWxQSwECLQAUAAYACAAAACEAh7oKST4BAACpAgAAFAAAAAAAAAAAAAAAAADhdQAAd29yZC93ZWJTZXR0aW5ncy54bWxQSwECLQAUAAYACAAAACEAhub8n6scAADr+gAAGgAAAAAAAAAAAAAAAABRdwAAd29yZC9zdHlsZXNXaXRoRWZmZWN0cy54bWxQSwUGAAAAABQAFAAiBQAANJQAAAAA
[fileName] => John_resume.docx
[contentType] => application/octet-stream
)
)
我試圖寫這個文件系統和我能做到這一點,但該文件被寫成文本文件,而不是作爲一個二進制文件。下面還提供了我已經完成的代碼。
$json = file_get_contents('php://input');
$document = json_decode($json, true, 32, JSON_BIGINT_AS_STRING);
$resumeFileData = $document['resume']['file']['data'];
$filePath = $folderPath . DS . $document['resume']['file']['fileName'];
$resumeFile = new File($filePath, true);
$resumeFile->write($resumeFileData);
$resumeFile->close();
我在做什麼不正確?我正在使用CakePHP 2.5.4
在此先感謝
您想創建一個docx文檔嗎?一個word文件,只使用cakephp? – zeflex
你是什麼意思,它不是寫成二進制文件。你期待什麼文件格式? – Augwa
我不想創建一個'新'docx文檔。我正在接收一個docx文檔作爲json流,我只需要將該流存儲回可讀文件結構。目前,當我保存並重新打開它時,我看到的是與我在示例中共享的相同的亂碼字符串 - 導致我相信缺少MIME類型或某些標題信息 – ChicagoSky