S2C
正确:{state: “True”, 
food:[
{name:“秋刀鱼”, price:“10元”,pic: “http://xxx/images/shop/dyj/qdy.jpg”, shop: “大眼睛”}, 
{name: 荔枝肉”, price:”12元”, pic: “http://xxx/images/lzr.jpg”, shop: “快乐便当”}shop:[
{name: “大眼睛”, pic: “http://xxx/images/shop/dyj/logo.jpg”,address:”铜盘路1号”},
{ name: “快乐便当”, pic: “http://xxx/images/shop/klbd/logo.jpg”,address:”铜盘路2号”}
]}
失败:{state: “false”}
请问如何构成这个JSON格式?

解决方案 »

  1.   

    生成一个多维的关联键数组
    然后 json_encode注意:只能是 utf-8 编码的数据
      

  2.   

     $S2C= array(
            'state' => 'true',
            'food' => array(
                array(
                    'name' => '秋刀鱼',
                    'price' => '10元',
                    'pic' => 'http://xxx/images/shop/dyj/qdy.jpg',
                    'shop' => '大眼睛'
                ),
                array(
                    'name' => '秋刀鱼',
                    'price' => '10元',
                    'pic' => 'http://xxx/images/shop/dyj/qdy.jpg',
                    'shop' => '大眼睛'
                )
            ),
            'shop' => array(
                array(
                    'name' => '秋刀鱼',
                    'price' => '10元',
                    'pic' => 'http://xxx/images/shop/dyj/qdy.jpg',
                    'shop' => '大眼睛'
                ),
                array(
                    'name' => '秋刀鱼',
                    'price' => '10元',
                    'pic' => 'http://xxx/images/shop/dyj/qdy.jpg',
                    'shop' => '大眼睛'
                )
            )
        )
    return json_encode($S2C);
      

  3.   

    elseif('get_my_favorite'==$action)
    {
    $name=$_GET['name'];

    //算法。连接三个表。。取值啦啦啦。。

    /*
    SELECT fo.name as food_name,fo.price,fo.pic as food_pic,s.name as shop_name
    FROM myfavorite AS fa
    JOIN user AS u ON fa.userid = u.id
    JOIN food AS fo ON fa.foodid = fo.id
    JOIN shop AS s ON fo.shopid = s.id SELECT s.name as shop_name,s.pic as shop_pic,s.address as shop_address
    FROM myfavorite AS fa
    JOIN user AS u ON fa.userid = u.id
    JOIN food AS fo ON fa.foodid = fo.id
    JOIN shop AS s ON fo.shopid = s.id
    SELECT * 
    FROM shop
    WHERE shop.id
    IN (SELECT s.id AS shop_id
    FROM myfavorite AS fa
    JOIN user AS u ON fa.userid = u.id
    JOIN food AS fo ON fa.foodid = fo.id
    JOIN shop AS s ON fo.shopid = s.id
    WHERE u.name =  'lx'
    */

    $name=$_GET['name'];

    $sql_food="SELECT fo.name as food_name,fo.price,fo.pic as food_pic,
    s.name as shop_name
    FROM myfavorite AS fa
    JOIN user AS u ON fa.userid = u.id
    JOIN food AS fo ON fa.foodid = fo.id
    JOIN shop AS s ON fo.shopid = s.id
    where u.name='".$name."'";
    // echo $sql; $sql_shop=
    "SELECT * 
    FROM shop
    WHERE shop.id
    IN (
    SELECT s.id
    FROM myfavorite AS fa
    JOIN user AS u ON fa.userid = u.id
    JOIN food AS fo ON fa.foodid = fo.id
    JOIN shop AS s ON fo.shopid = s.id
    where u.name='".$name."')";// echo $sql_shop;
    $row_food=$db->getAll($sql_food);
    $row_shop=$db->getAll($sql_shop);
    // echo("<pre>");
    // print_r($row_shop);
    // $arr=array('state'=>'false');
    // $f=array('1'=>array('1.1'=>'aa','1.2'=>'ab'),2=>array('2.1'=>'ba','2.2'=>'bb'));
    // $ff=array(1=>'aa',2=>'bb');
    //// print_r($f);
    // $arr2=array($arr,$f,$f);
    // echo json_encode($arr2);
    // $t='{"people":[{"firstName":"Brett","lastName":"McLaughlin","email":"aaaa"},
    //  { "firstName": "Jason", "lastName":"Hunter", "email": "bbbb"},
    //  { "firstName": "Elliotte", "lastName":"Harold", "email": "cccc" }
    //  ]}
    //  ';
    //$a = array();
    //$a['state'] = "false";
    //$a['food'][0]['name'] = '秋刀鱼';
    //$a['food'][0]['price'] = '10元';
    //$a['food'][0]['pic'] = 'http://xxx/images/shop/dyj/qdy.jpg';
    //$a['food'][1]['name'] = '荔枝肉';
    //$a['food'][1]['price'] = '12元';
    //$a['food'][1]['pic'] = 'http://xxx/images/lzr.jpg';
    //$a['shop'][0]['name'] = '大眼睛';
    //$a['shop'][0]['pic'] = 'http://xxx/images/shop/dyj/logo.jpg';
    //$a['shop'][0]['address'] = '铜盘路1号';

    // echo json_encode($a);
    //
    // $arr=array
    // $tt=
    // echo json_encode($t);
    //
    // $S2C= array(
    //        'state' => 'true',
    //        'food' => array(
    //            array(
    //                'name' => '秋刀鱼',
    //                'price' => '10元',
    //                'pic' => 'http://xxx/images/shop/dyj/qdy.jpg',
    //                'shop' => '大眼睛'
    //            ),
    //            array(
    //                'name' => '秋刀鱼',
    //                'price' => '10元',
    //                'pic' => 'http://xxx/images/shop/dyj/qdy.jpg',
    //                'shop' => '大眼睛'
    //            )
    //        ),
    //        'shop' => array(
    //            array(
    //                'name' => '秋刀鱼',
    //                'price' => '10元',
    //                'pic' => 'http://xxx/images/shop/dyj/qdy.jpg',
    //                'shop' => '大眼睛'
    //            ),
    //            array(
    //                'name' => '秋刀鱼',
    //                'price' => '10元',
    //                'pic' => 'http://xxx/images/shop/dyj/qdy.jpg',
    //                'shop' => '大眼睛'
    //            )
    //        )
    //    );
    //echo  json_encode($S2C);//$a['food'][0]['price'] = '10元';// $sql="SELECT fo.name as food_name,fo.price,fo.pic as food_pic,
    // s.name as shop_name $a=array('state'=>'false');
    if($row_food)
    {
    $a=array('state'=>'true');
    // echo("<pre>");
    foreach($row_food as $k=>$v)
    {
    // print_r($v);
    $a['food'][$k]['name']=$v['food_name'];
    $a['food'][$k]['price']=$v['price'];
    $a['food'][$k]['pic']=$v['food_pic'];
    $a['food'][$k]['shop']=$v['shop_name'];
    }

    foreach($row_shop as $k=>$v)
    {
    // print_r($v);
    $a['shop'][$k]['name']=$v['name'];
    $a['shop'][$k]['pic']=$v['pic'];
    $a['shop'][$k]['address']=$v['address'];
    }
    }

    echo "<pre>";
    print_r($a);
    echo json_encode($a);
    }
      

  4.   


    $array = array();
    $array = array(
            'state' => 'true',
            'food' => array(
                array(
                    'name' => '秋刀鱼',
                    'price' => '10元',
                    'pic' => 'http://xxx/images/shop/dyj/qdy.jpg',
                    'shop' => '大眼睛'
                ),
                array(
                    'name' => '秋刀鱼',
                    'price' => '10元',
                    'pic' => 'http://xxx/images/shop/dyj/qdy.jpg',
                    'shop' => '大眼睛'
                )
            ),
            'shop' => array(
                array(
                    'name' => '秋刀鱼',
                    'price' => '10元',
                    'pic' => 'http://xxx/images/shop/dyj/qdy.jpg',
                    'shop' => '大眼睛'
                ),
                array(
                    'name' => '秋刀鱼',
                    'price' => '10元',
                    'pic' => 'http://xxx/images/shop/dyj/qdy.jpg',
                    'shop' => '大眼睛'
                )
            )
        )
    var_dump(json_encode($array));