2016-11-30 137 views
0

我通過file_get_contents請求獲取人員列表並解析該列表。Json_encode二進制字符串

在循環瀏覽它們時,如果有人通過某些條件,我需要抓取這些人員數據併爲發佈請求創建一個正文。

但是我得到的一些值包含不同類型的特殊字符。像ü,æ,ø等等。只要發生這種情況,字符串就會以二進制字符串形式提供。像:b「tæst」。當這些字符不存在時,它就像「測試」一樣傳送。

array:14 [ 
    0 => "23468" 
    1 => "Firstname" 
    2 => b"Læstname" 
    3 => "[email protected]" 
    4 => "center" 
    5 => "2016-11-29" 
    6 => "" 
    7 => "" 
    8 => "" 
    9 => "" 
    10 => "Level" 
    11 => "54698523" 
    12 => "" 
    13 => "" 
] 

解析列表後,這是例如一個用戶的數組。所以,當我wan't做包含用戶的字符串全名我已經試過類似:

htmlspecialchars($employee[1].' '.$employee[2], ENT_COMPAT,'ISO-8859-1', true); 

但我需要回到此爲JSON,當我json_encode這只是返回false。我相信我已經把它縮小到了對其負責的特殊角色,而不知道爲什麼。

所以我想問我在這裏用json_encoding中的二進制字符串發生了什麼,是否有一種方法可以將其轉換爲其他方法來處理這些特殊字符?

+1

文檔使用哪種編碼? –

+0

我試圖想出來,但一直未能。有沒有我能找到的方法,還是我需要向數據供應商詢問這個問題? – gerre

+1

只需下載文件,用記事本++打開它(例如),並看看編碼菜單:) –

回答

0

突然它運行只是utf-8_encode在運行file_get_contents後的整個字符串,並解決了問題。