我有一個需要參數類型爲「xs:base64Binary」的web服務 - 這是一個存儲在數據庫中的文件。PHP需要使用需要xs的webservice:base64Binary
我想使用PHP 5的本地web服務類的服務。我試過幾件事:
// Get the posted file
$file = file_get_contents($_FILES['Filedata']['tmp_name']);
// Add the file, encoding it as a base64
$parameters = array("fileBytes" => base64_encode($file));
// Call the webservice
$response = $client->attachFile($parameters);
結果是錯誤說「錯誤的請求」。如果該文件是一個文本文件,我不base64_encode,它工作正常。發佈二進制文件(如圖像)時出現問題結果。
任何人都知道這裏的詭計?
編輯1
也存在問題是,如果我編碼的文本文件,它似乎工作,但當然它的編碼,再最終被垃圾一旦下載並觀看(即文本進行編碼並沒有按似乎不會被服務器解碼)。
是的,做了轉儲,我看到$文件已設置。另外,它可以很好地處理非二進制文件... – bugfixr 2009-12-15 00:54:59