首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何避免PHP的列索引?

问如何避免PHP的列索引?
EN

Stack Overflow用户
提问于 2016-01-27 04:39:32
回答 2查看 58关注 0票数 1

当我从一个表中获取用于创建Json格式化字符串的所有值时,我还在php response.How中获得了索引以避免它?

我的Php程序

代码语言:javascript
复制
<?php
include 'configa.php'; 
$sql1 = mysql_query("SELECT * FROM `message_store_push`") or die(mysql_error());
$c = mysql_num_rows($sql1);
$i=0;
while($sql2 = mysql_fetch_array($sql1)){
         $arrDet['AddressDetails']['details'][] = $sql2;
}

 if($c>0){
    $arrDet['Details']['status'] = "success";
 } else {
    $arrDet['Details']['status'] = "No data";
 }
echo json_encode($arrDet);
?>

而反应是

代码语言:javascript
复制
{
"AddressDetails":{
"details":[
{
"0":"1",
"key_id":"1",
"1":"2016-01-27 04:20:52",
"key_time":"2016-01-27 04:20:52",
"2":"HI",
"key_message":"HI"
}
]
},
"Details":{
"status":"success"
}
}

但我需要

代码语言:javascript
复制
{
"AddressDetails":{
"details":[
{
"key_id":"1",
"key_time":"2016-01-27 04:20:52",
"key_message":"HI"
}
]
},
"Details":{
"status":"success"
}
}

我怎样才能做到这一点

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-01-27 04:51:05

用这个:

代码语言:javascript
复制
<?php
include 'configa.php'; 
$sql1 = mysql_query("SELECT * FROM `message_store_push`") or die(mysql_error());
$c = mysql_num_rows($sql1);
$i=0;
while($sql2 = mysql_fetch_assoc($sql1)){ // instead of mysql_fetch_array()
         $arrDet['AddressDetails']['details'][] = $sql2;
}

 if($c>0){
    $arrDet['Details']['status'] = "success";
 } else {
    $arrDet['Details']['status'] = "No data";
 }
echo json_encode($arrDet);
?>

因为mysql_fetch_array()返回表值索引和关联键,所以只有关联键及其值总是使用mysql_fetch_assoc()函数!

票数 1
EN

Stack Overflow用户

发布于 2016-01-27 04:41:50

您需要使用mysql_fetch_assoc而不是mysql_fetch_array

这

代码语言:javascript
复制
while($sql2 = mysql_fetch_array($sql1)){
         $arrDet['AddressDetails']['details'][] = $sql2;
}

应该是

代码语言:javascript
复制
while($sql2 = mysql_fetch_assoc($sql1)){
         $arrDet['AddressDetails']['details'][] = $sql2;
}

还请注意,mysql_*函数已从PHP7中删除,您可以开始使用mysqli或PDO。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35029014

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档