PHP解決serialize函數中文亂碼問題的方法:將序列化後包含中文的字串再進行一次「base64_encode」編碼,編碼後可以將特殊字元進行轉義,並將中文字元傳送到客戶端。
本文操作環境:Windows10系統、PHP7.1版、Dell G3電腦。
serialize() 函數用於序列化物件或陣列,並傳回一個字串。
serialize() 函數序列化物件後,可以很方便的將它傳遞給其他需要它的地方,且其類型和結構不會改變。
語法為:
string serialize ( mixed $value )
參數說明:
$value: 要序列化的物件或陣列。
相信大家在運用serialize對中文的編碼的時候都會遇到過中文不可解析的問題。尤其是在將序列化後的中文字串傳送到客戶端的時候,那該如何解決這個問題呢?
其實很容易,將序列化後的包含中文的字串再進行一次base64_encode的編碼,這樣就能夠將特殊字元進行轉移。將中文字元傳送到客戶端了。
範例如下:
<?php $sites = array('Google', 'Runoob', 'Facebook'); $serialized_data = serialize($sites); echo $serialized_data . PHP_EOL; ?>
輸出結果:
#推薦學習:《PHP影片教學》
以上是php中怎麼解決serialize函數中文亂碼的問題的詳細內容。更多資訊請關注PHP中文網其他相關文章!