Php 通过字符串访问json数组?(将字符串转换为变量名称)
我试图使用jquery将“lang_id”变量发布到“get_lang.php”以获取(json)数据。 但我无法访问数据 现在我正在努力Php 通过字符串访问json数组?(将字符串转换为变量名称),php,string,json,variables,Php,String,Json,Variables,我试图使用jquery将“lang_id”变量发布到“get_lang.php”以获取(json)数据。 但我无法访问数据 现在我正在努力 var r = $(this).attr('rel'); var v = data.r; 但这不起作用,因为“r”是字符串 也试过 data.window[r] // but... “get_lang.php” $lang_id = (int) ($_POST['lang_id']); if($lang_id == 1) { $la
var r = $(this).attr('rel');
var v = data.r;
但这不起作用,因为“r”是字符串
也试过
data.window[r] // but...
“get_lang.php”强>
$lang_id = (int) ($_POST['lang_id']);
if($lang_id == 1)
{
$lang['simple'] = 'aaa';
$lang['array'] = 'bbb';
}
if($lang_id == 2)
{
$lang['simple'] = 'ccc';
$lang['array'] = 'ddd';
}
print json_encode($lang);
$.post("get_lang.php", { "lang_id": 2}, function(data){
$('.lang').each(function() {
var r = $(this).attr('rel');
var v = data.r;
$(this).text(v);
});
},"json");
my.js强>
$lang_id = (int) ($_POST['lang_id']);
if($lang_id == 1)
{
$lang['simple'] = 'aaa';
$lang['array'] = 'bbb';
}
if($lang_id == 2)
{
$lang['simple'] = 'ccc';
$lang['array'] = 'ddd';
}
print json_encode($lang);
$.post("get_lang.php", { "lang_id": 2}, function(data){
$('.lang').each(function() {
var r = $(this).attr('rel');
var v = data.r;
$(this).text(v);
});
},"json");
谢谢你的帮助。试试看
var v = data[r];
点符号将r解释为字符串而不是变量。我认为可能需要告诉jQuery正确的内容类型。将其放在
get_lang.php
文件的顶部
header("Content-Type: application/json");
看看jQuery是否喜欢它