繁体   English   中英

将php数组转换为JSON文件

[英]Convert php array to JSON files

我想从php函数(或直接从我的BDD)创建一个json文件。

我有一个PHP函数,写在我的数据库sql中

这是我在我的数据库中编写的函数(它是magento,但它可以工作):

$data = array('image'=>$my_upload->file_copy,'shopid'=>$customerid,'newsid'=>1);
$model = Mage::getModel('newsimagestable/newsimagestable')->setData($data);

Md表db_activity

shopid      newsid          imgid                    image
   7           1              1                     1.jpg
   7           1              2                     2.jpg
   7           1              3                     3.jpg

并知道我用这个函数将它转换为Json:

$actArray = array();
    $activityAll = Mage::helper(eventdemo)->getactivitytest(7); //get my table db_activity

        foreach ($activityAll as $data){                
            array_push($actArray, "images:".$data->getData('image'),"thumb:".$data->getData('image'));              
        };

    file_put_contents('data.json',  stripslashes(json_encode($actArray)));

我只能以这种格式获取json文件:

["images:1.jpg","thumb:1_m.jpg","images:2.jpg","thumb:2_m.jpg","images:3.jpg","thumb:3_m.jpg"]

但是我想要这种格式(所以我认为这是一个包含多个条目的数组):

[
{ "thumb": "image1_m.jpg", "image": "image1.jpg" },
{ "thumb": "image2_m.jpg", "image": "image2.jpg" }  ]

那可能吗 ?

谢谢

代替

foreach ($activityAll as $data){                
            array_push($actArray, "images:".$data->getData('image'),"thumb:".$data->getData('image'));              
        };

你应该做

foreach ($activityAll as $data){                
            array_push($actArray, array("images" => $data->getData('image'), "thumb" => $data->getData('image')));              
        };

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM