2011-10-23 66 views
0

我試圖使用json將文本和blob圖像信息從MySQL發送到iPhone應用程序。 但是,有人告訴我,我應該分離文本和blob圖像信息,因爲blob在技術上不是二進制的 - 因此我必須使用base64_encode()。那麼....我要創建兩個PHP文件,但想檢查是否有可能在一個PHP文件中做到這一點。 :/我嘗試了,但沒有運氣,但它甚至有可能嗎?是否可以在一個php文件中使用兩個json_encode()?

回答

2

您可以隨意調用json_encode這個函數。 但一起扔輸出是行不通的。

如果你打算做

print json_encode($data_array); 
print json_encode($image_blob); 

那麼這將導致無效JSON響應。
{"data":123} {"image":"PNG%...."}

,如果你想這在一個響應的工作,你需要將數據和圖像斑點莫名其妙地結合起來:

print json_encode(array_merge($data_ar, array("image"=>$image_blob))); 
0

沒有這樣的限制。您可以根據需要多次使用json_encode。

+0

嗯,這意味着我可以用objc和JSON從一個接收他們兩個PHP頁面? – Raccoon

+0

技術上是真的。但是一次不能輸出多個json字符串。正如馬里奧在他的回答中所展示的 - 兩個單獨的json字符串是一個語法錯誤。 –

1

是的,你只需要有一些條件來決定你將返回哪個JSON文件......但是如果你打算單獨提供圖像,那麼你幾乎肯定會更好地提供圖像和不在JSON文檔中編碼它。

+0

嗯,這意味着我可以從一個PHP頁面使用objc&json接收他們兩個? – Raccoon

+0

不,它沒有。根據發送的數據,一個腳本可以分支並執行兩個不同的事情。 – Quentin

+0

現在我明白你的意思了:)謝謝。 – Raccoon

相關問題