以表格格式显示Php(json)输出

时间:2018-05-12 10:09:43

标签: php wordpress

我是Wordpress Plugin Developement的新手,写了一个请求数据url的函数并在Json格式中得到相同的函数代码如下;

function user_det()
{
$em = '';
$url = ''.$em;
$myhtml = wp_remote_retrieve_body( wp_remote_get($url, array( 'timeout'=>120)));
echo '<pre>' , print_r($myhtml) , '</pre>';
}

输出:

{

"Status":"Success",
"Bookings":[
    {
        "Message":"",
        "Detail":{
            "ServiceType":"",
            "HoName":"",
            "HAddress1":"",
            "ToRooms":"",
            "RoDetail":[
                {
                    "RoomTypeDescription":[
                        " "
                    ],
                    "NumberOfRooms":"",
                    "Passengers":[
                        {
                            "Salutations":"",
                            "FirstName":"",
                            "LastName":""                         
                        },
                        {
                            "Salutations":"",

                            "Age":"",
                            "CotBedOption":""
                        }
                    ],
                    "totalAdult":2,
                    "totalChild":0
                }
            ],
            "Phone":"-",
            "Rating":"",
            "email":""
        }
    }]}

但是,有没有办法我可以以表格格式显示数据,尝试在线搜索但无法理解

1 个答案:

答案 0 :(得分:0)

当您从API请求获取JSON格式的信息时,您需要迭代每个元素以格式化您想要的方式,例如使用此信息构建表。

$myhtml = wp_remote_retrieve_body( wp_remote_get($url, array( 'timeout'=>120)));
$dataArray = json_decode($myhtml,1);
echo '<table>';
echo '<thead><tr><th>Service Type</th></tr></thead>';
echo '<tbody>';
// Now we have the json converted into an array, let's iterate it
foreach($dataArray["Bookings"] as $idx=>$bookingData) {
    // Iterate all bookings and write on the rows
    echo '<tr>';
        echo '<td>'.$bookingData['Detail']['ServiceType'].'</td>';
    echo '</tr>';
}
echo '</tbody><table>';

我相信这可以让您了解需要执行什么来获取对象并构建表格。