PHP 数组到 javascript 数组 UTF-8
PHP array to javascript array UTF-8
我尝试将 php 数组移动到 javascript 数组。
这就是我所做的:
$cities = "בני ברק, גבעתיים, חוות שלם, רמת גן";
$php_array = explode(',', $cities);
$js_array = json_encode($php_array,JSON_HEX_APOS|JSON_HEX_QUOT);
echo "<script type='text/javascript'> var cities = ". $js_array . ";</script>";
出于某种原因,当我打开 google chrome 调试器并检查城市是什么时,这就是我得到的:
<script type='text/javascript'> var cities = ["אזעקה בבני ברק"," גבעתיים"," חוות שלם"," רמת גן"];</script>
不知道为什么会解码。我有 php 5.6.
后来我尝试只移动一个普通变量,即使我移动一个普通变量(没有json_encode)它也变成那样
我用了那些例子:
Convert php array to Javascript
Passing utf-8 strings between php and javascript
谢谢!
首先,使用 UTF-8 with BOM
编码保存您的文件。然后,将 JSON_UNESCAPED_UNICODE
选项添加到您的 json_encode
调用中。
$js_array = json_encode($php_array, JSON_HEX_APOS|JSON_HEX_QUOT|JSON_UNESCAPED_UNICODE);
我尝试将 php 数组移动到 javascript 数组。 这就是我所做的:
$cities = "בני ברק, גבעתיים, חוות שלם, רמת גן";
$php_array = explode(',', $cities);
$js_array = json_encode($php_array,JSON_HEX_APOS|JSON_HEX_QUOT);
echo "<script type='text/javascript'> var cities = ". $js_array . ";</script>";
出于某种原因,当我打开 google chrome 调试器并检查城市是什么时,这就是我得到的:
<script type='text/javascript'> var cities = ["אזעקה בבני ברק"," גבעתיים"," חוות שלם"," רמת גן"];</script>
不知道为什么会解码。我有 php 5.6.
后来我尝试只移动一个普通变量,即使我移动一个普通变量(没有json_encode)它也变成那样
我用了那些例子:
Convert php array to Javascript
Passing utf-8 strings between php and javascript
谢谢!
首先,使用 UTF-8 with BOM
编码保存您的文件。然后,将 JSON_UNESCAPED_UNICODE
选项添加到您的 json_encode
调用中。
$js_array = json_encode($php_array, JSON_HEX_APOS|JSON_HEX_QUOT|JSON_UNESCAPED_UNICODE);