将php数组转换为JSON文件

I want to create a json files from a php functions (or directly from my BDD).

I have a php function that write in my database sql

This is my function that write in my database (it's magento, but it works) :

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

Md table db_activity

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

And know I convert this to Json with this function :

$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)));

And I can only get the json files in this format :

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

But I want to have this format (so an array with multiple entry I think) :

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

Is that possible ?

Thanks

Instead of

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

you should do

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