>我将一个包含城市名称的数组放入会话变量中。
数组示例:圣蒂特,QC圣埃米尔,QC圣阿黛尔,QC圣阿加特德蒙,QC
当我将此会话变量数组转换为 javascript 数组时
var availableTags = <?php echo json_encode($_SESSION['villeDB']) ?>;
数组现在看起来像这样:圣蒂特,QC零零圣阿加特德蒙,QC
如何在转换城市名称数组时保留特殊字符?
json_encode
要求字符串以UTF8编码。
就个人而言,我喜欢用单字节字符集编程。总的来说,这并不那么令人头疼。但在这种情况下,我有一个辅助函数:
function json_output($json) {
if( is_array($json))
array_walk_recursive($json,function(&$a) {if(is_string($a)) $a=utf8_encode($a);});
elseif( is_string($json))
$json = utf8_encode($json);
$j = json_encode($json,true);
return $j;
}