我正在从具有不同列的表中获取数据,然后将其保存在数组中。这是我的代码:
$sql="SELECT image,image1,image2,image3,image4,image5 FROM `app_places` where place_id='".$place_id."' ";
$check= mysqli_query($conn, $sql);
$rowcount=mysqli_num_rows($check);
//var_dump($rowcount);
if($rowcount<=0)
{
$minfo = array("success"=>'false',"msg"=>'invalid place_id');
$jsondata = json_encode($minfo);
print_r($jsondata);
exit();
}
else
{
$data = array();
while ($row = mysqli_fetch_array($check,MYSQLI_NUM))
{
$data[] = $row;
}
我将其编码为 json 格式,我的输出如下:
{"allplaces":
[
{
"image":"http://www.freepngimg.com/download/lion/3-2-lion-png.png","image1":"http://mobileappdatabase.in/city/uploads/default-image/defaultimage.png","image2":"http://mobileappdatabase.in/city/uploads/default-image/defaultimage.png","image3":"http://mobileappdatabase.in/city/uploads/default-image/defaultimage.png","image4":"http://mobileappdatabase.in/city/uploads/default-image/defaultimage.png","image5":"http://mobileappdatabase.in/city/uploads/default-image/defaultimage.png"
}
]
}
但我需要这样:
{"allplaces":[
{"image":"http://www.freepngimg.com/download/lion/3-2-lion-png.png"},
{"image1":"http://mobileappdatabase.in/city/uploads/default-image/defaultimage.png"},
{"image2":"http://mobileappdatabase.in/city/uploads/default-image/defaultimage.png"},
{"image3":"http://mobileappdatabase.in/city/uploads/default-image/defaultimage.png"},
{"image4":"http://mobileappdatabase.in/city/uploads/default-image/defaultimage.png"},
{"image5":"http://mobileappdatabase.in/city/uploads/default-image/defaultimage.png"}]}
最佳答案
只有当您有 1 行时,这才有效。你的表结构很糟糕,但是你可以了。
while ($row = mysqli_fetch_array($check,MYSQLI_ASSOC)) {
foreach($row as $key => $value){
$data[] = array(
$key => $value
);
}
}
关于php - 如何将数组的元素更改为对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47312139/