将PHP数组转换为对象的JSON数组
我正在我的项目中使用。在这里,我将从PHP文件返回将PHP数组转换为对象的JSON数组,php,arrays,json,orgchart,Php,Arrays,Json,Orgchart,我正在我的项目中使用。在这里,我将从PHP文件返回JSON对象 问题 我的问题是,当我硬编码值时,它工作正常。当我从PHP文件返回数据时。它不起作用。我猜从PHP文件返回的数据格式不正确。文件如下 $result = mysql_query("SELECT * FROM emp"); while($row = mysql_fetch_array( $result )) { $arr1 = array( 'v' => $row['name']
JSON对象
问题
我的问题是,当我硬编码值时,它工作正常。当我从PHP文件返回数据时。它不起作用。我猜从PHP文件返回的数据格式不正确。文件如下
$result = mysql_query("SELECT * FROM emp");
while($row = mysql_fetch_array( $result )) {
$arr1 = array(
'v' => $row['name'],
'f' => $row['name']+'<div style="color:red; font-style:italic">President</div>',
'' => $row['rep'],
'' => $row['des'],
);
array_push($dataarray, $arr1);
}
echo json_encode($dataarray);
控制台屏幕截图如下:
我需要在PHP文件中再创建一个数组吗。如何根据上面的屏幕截图更改PHP数组。对不起我的英语。谢谢。您的内部结构是错误的。您的内部结构是一个数组,第一个是映射,后面是两个值。您当前的实现是一个数组,只有一个映射
$result = mysql_query("SELECT * FROM emp");
while($row = mysql_fetch_array( $result )) {
$arr1 = array(
array(
'v' => $row['name'],
'f' => $row['name'] . '<div style="color:red; font-style:italic">President</div>',
),
$row['rep'],
$row['des']);
array_push($dataarray, $arr1);
}
echo json_encode($dataarray);
$result=mysql\u查询(“从emp中选择*);
while($row=mysql\u fetch\u数组($result)){
$arr1=数组(
排列(
'v'=>$row['name'],
'f'=>$row['name']。'President',
),
$row['rep'],
$row['des']);
阵列推送($dataarray,$arr1);
}
echo json_编码($dataarray);
您需要将“v”和“f”包装在一个数组中,然后将其他值推送到父数组中
$result = mysql_query("SELECT * FROM emp");
while($row = mysql_fetch_array( $result )) {
$arr1 = array(
array(
'v' => $row['name'],
'f' => $row['name'] . '<div style="color:red; font-style:italic">President</div>'
),
$row['rep'],
$row['des']
);
array_push($dataarray, $arr1);
}
echo json_encode($dataarray);
$result=mysql\u查询(“从emp中选择*);
while($row=mysql\u fetch\u数组($result)){
$arr1=数组(
排列(
'v'=>$row['name'],
'f'=>$row['name']。'President'
),
$row['rep'],
$row['des']
);
阵列推送($dataarray,$arr1);
}
echo json_编码($dataarray);
在硬编码数组中,第一个键的内部有一个数组,因此您必须像这样更改代码
$result = mysql_query("SELECT * FROM emp");
$dataarray = [];
while($row = mysql_fetch_array( $result )) {
$arr1 = array(
array(
'v'=> $row['name'],
'f' => $row['name'].'<div style="color:red; font-style:italic">President</div>',),
$row['rep'],
$row['des'],
);
array_push($dataarray, $arr1);
}
echo json_encode($dataarray);
$result=mysql\u查询(“从emp中选择*);
$dataarray=[];
while($row=mysql\u fetch\u数组($result)){
$arr1=数组(
排列(
'v'=>$row['name'],
'f'=>$row['name']。'President',),
$row['rep'],
$row['des'],
);
阵列推送($dataarray,$arr1);
}
echo json_编码($dataarray);
显示您获得的JSON输出echo JSON\u encode($dataarray)代码>。。另外,最初在$dataarray
中存储了什么?@ObjectManipulator,我已经解析了$dataarray
中的数据,并在屏幕截图res
中显示了结果。
$result = mysql_query("SELECT * FROM emp");
$dataarray = [];
while($row = mysql_fetch_array( $result )) {
$arr1 = array(
array(
'v'=> $row['name'],
'f' => $row['name'].'<div style="color:red; font-style:italic">President</div>',),
$row['rep'],
$row['des'],
);
array_push($dataarray, $arr1);
}
echo json_encode($dataarray);