将数组转换为 JSON - 聪明
transforming array into json - smarty
假设我有一个数组(从我的php代码动态生成)
array (size=4)
0 =>
array (size=1)
'Sat' => string '6' (length=1)
1 =>
array (size=1)
'Sun' => string '10' (length=2)
我想得到以下内容以将其放入javascript变量中
{
"x": 'Sat',
"y": 6
}{
"x": 'Sun',
"y": 10
}
我怎样才能做到这一点?
你可以使用 json_encode(),并将其传递给 JavaScript 变量,如下所示:
$json = json_encode($your_array);
在 js 中:
var json_frm_php = <?php echo $json; ?>
你可以直接在 smarty 中使用 'json_encode',或者只分配一个 json_encode() 变量...
例如
// in your PHP script :
$myArray = array(
array("x" => "Sat", "y" => "6",),
array("x" => "Sun", "y" => "10",),
);
$smarty->assign('jsondata', json_encode($myArray));
$smarty->assign('rawdata', $myArray);
$smarty->display('template.tpl');
然后在模板中:
<script>
var data1 = {$jsondata};
var data2 = {$rawdata|@json_encode};
....
</script>
这将呈现为:
<script>
var data1 = [{"x":"Sat","y":"6"},{"x":"Sun","y":"10"}];
var data2 = [{"x":"Sat","y":"6"},{"x":"Sun","y":"10"}];
...
</script>
参见 : http://www.smarty.net/docsv2/en/language.modifiers.tpl
这有帮助吗?
$myArray = array(
array(
"x" => "Sat",
"y" => "6",
),
array(
"x" => "Sun",
"y" => "10",
)
);
$json = json_encode($myArray);
print_r($json);
输出: [{"x":"Sat","y":"6"},{"x":"Sun","y":"10"}]
我想你想放一个javascript变量
{
"x": 'Sat',
"y": 6
},{
"x": 'Sun',
"y": 10
}
所以你必须首先将变量$jsonArray=json_encode($Array)
包装在你的PHP代码中,然后
{literal}
<script>
var json = JSON.parse('{/literal}{$campaign->getStatsMembers()}{literal}'),final=[],final=[];
for(var key1 in json){
for(var key2 in json[key1]){
var tmp={"x":key2,"y":json[key1][key2]};
final.push(tmp);
}
}
console.log(final);
</script>
{/literal}
顺便说一句,我曾经jQuery
,也许有一种更方便的方式来循环您的json
变量!
相关文章:
- jQuery匹配JSON对象的部分文本
- 在循环中分配json值时,值被覆盖
- 需要帮助设置json数组
- 如何在Javascript中将JSon对象转换为数组
- 我可以在json对象中添加一个函数吗
- 使用JS将数组转换为json对象
- Javascript-如何读取json文件中的列并将其保存在Javascript数组中
- 使用JQuery解析JSON嵌套数组
- 在使用Polymer'加载所有json文件后执行方法;s的核心ajax
- 如何使用json将对象列表从java转换为javascript
- 如何使用 node.js 比较两个 json 数组
- 如何将JSON数据导入我的ejs模板
- 区分JSON中的矩阵和列表列表
- 不显示带有本地json文件数据的谷歌地图脚本
- 如何将json数据显示为html
- 如何为json对象中的段发送array[]
- 根据id将json数组组合为一个json数组
- Json数据包含日期和时间格式
- AngularJS-在JSON选择器中使用变量名
- 将数组转换为 JSON - 聪明