如何通过json在php中获取对象本身的对象数组

时间:2015-12-09 10:48:08

标签: php mysql arrays json

我正在为旅游者开发在线物业预订网站 这是我的表格,我在那里从数据库中恢复数据

PROPERTYiD ACCOMODATIONTYPE AVAILABLEROOMS ----------------------------------------------- | | kalyan appartment | 1BHK | 5 kalyan appartment | 2 BHK | 6
BHARAT tourist | VILLA | 2 BHARAT tourist | 2 BHK | 3 sneh tourist hotel | 2hk room | 1

我的json是

{"rows":[{"propertyId":"kalyan appartment","cell":[{"available_rooms":"5","AccomodationTypeName":"1bhk"}]},{"propertyId":"kalyan appartment","cell":[{"available_rooms":"6","AccomodationTypeName":"2bhk"}]},{"propertyId":"BHARAT tourist","cell":[{"available_rooms":"2","AccomodationTypeName":"villa"}]},{"propertyId":"BHARAT tourist","cell":[{"available_rooms":"3","AccomodationTypeName":"2bhk"}]},{"propertyId":"sneh tourist hotel","cell":[{"available_rooms":"1","AccomodationTypeName":"2hk room"}]}]}

这里我的json是每个住宿类型的可用房间,但我希望我的json应该是(没有住宿和他们每个属性id的可用房间)意味着它应该给json作为 -

kalyan appartment   |   [{"accomodation type":"1BHK","available_rooms":"5"},
                          {"accomodation type":"2BHK","available_rooms":"6"}]

BHARAT tourist      |   [{"accomodation type":"VILLA","available_rooms":"2"},
                         {"accomodation type":"2BHK","available_rooms":"3"}]

sneh tourist hotel  |  [{"accomodation type":" 2hk room ","available_rooms":"1"}]

我的PHP代码是

while ( $row = mysql_fetch_array ( $result, MYSQL_ASSOC ) ) {

    if ($i == 0) {
        $propertyId = $row ['propertyId'];
    }

    $j = 0;
    $propertyInfo = array ();

    if ($propertyId == $row ['propertyId']) {
        for($j = 0; $j < 3; $j ++) {
            $propertyInfo [$j] ['roomAvailable'] = $row ['roomidCount'];
            $propertyInfo [$j] ['AccomodationTypeName'] = $row ['AccomodationTypeName'];
            break;
        }
    } else {
        $propertyInfo [0] ['roomAvailable'] = $row ['roomidCount'];
        $propertyInfo [0] ['AccomodationTypeName'] = $row ['AccomodationTypeName'];
    }
    $responce->rows [$i] ['propertyId'] = $row ['propertyId'];
    $responce->rows [$i] ['cell'] = $propertyInfo;
    $i ++;
    $propertyId = $row ['propertyId'];
}
echo json_encode ( $responce );

0 个答案:

没有答案