卷曲并将其张贴在表格中

时间:2013-08-05 11:37:37

标签: php curl

所以昨天我问到将数据发布到表格中。现在它确实给出了一个好结果但是至少需要30秒才能得到结果。我用卷发试了一下,我几乎立即得到了结果。现在我的问题是:我如何将数据从curl发布到表中。

我的代码:

function curl_download($Url){

    // is cURL installed yet?
    if (!function_exists('curl_init')){
        die('Sorry cURL is not installed!');
    }

    // OK cool - then let's create a new cURL resource handle
    $ch = curl_init();

    // Now set some options (most are optional)

    // Set URL to download
    curl_setopt($ch, CURLOPT_URL, $Url);

    // Set a referer
    curl_setopt($ch, CURLOPT_REFERER, "http://www.example.org/yay.htm");

    // User agent
    curl_setopt($ch, CURLOPT_USERAGENT, "MozillaXYZ/1.0");

    // Include header in result? (0 = yes, 1 = no)
    curl_setopt($ch, CURLOPT_HEADER, 0);

    // Should cURL return or print out the data? (true = return, false = print)
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

    // Timeout in seconds
    curl_setopt($ch, CURLOPT_TIMEOUT, 10);

    // Download the given URL, and return output
    $output = curl_exec($ch);

    // Close the cURL resource, and free system resources
    curl_close($ch);

    return $output;
}

print curl_download('http://services.runescape.com/m=itemdb_rs/api/catalogue/items.json?category=1&alpha=a&page=1');

结果:

  

{ “总”:5 “项”:[{ “图标”: “http://services.runescape.com/m=itemdb_rs/4173_obj_sprite.gif?id=4798”, “icon_large”: “http://services.runescape.com/m=itemdb_rs/4173_obj_big.gif?id=4798”, “标识”:4798, “类型”: “Ammo”,“typeIcon”:“http://www.runescape.com/img/categories/Ammo”,“name”:“坚定的野蛮”,“描述”:“钝的坚定箭头......哎哟”,“当前”:{“趋势”:“中立“ ”价格“:222}, ”今日“:{ ”趋势“: ”中性“, ”价格“:0}},{ ”图标“: ”http://services.runescape.com/m=itemdb_rs/4173_obj_sprite.gif?id=810“, ”icon_large“:”{{ 3}}“,”id“:810,”type“:”Ammo“,”typeIcon“:”http://services.runescape.com/m=itemdb_rs/4173_obj_big.gif?id=810“,”name“:”坚定的飞镖“,”描述“:”致命的投掷飞镖一个坚定的提示。“,”当前“:{”趋势“:”中立“,”价格“:11},”今天“:{”趋势“:”中性“,”价格“:0}},{”icon “:”http://www.runescape.com/img/categories/Ammo “ ”icon_large“: ”http://services.runescape.com/m=itemdb_rs/4173_obj_sprite.gif?id=829“, ”ID“:829, ”类型“: ”弹药“, ”typeIcon“: ”http://services.runescape.com/m=itemdb_rs/4173_obj_big.gif?id=829“,” 名称“:”坚定的标枪“,”描述“:”坚定的标枪。“,”当前“:{”趋势“:”中立“,”价格“:64},”今天“:{”趋势“:”正面“ ”价格“: ”+ 1“}},{ ”图标“: ”http://www.runescape.com/img/categories/Ammo“, ”icon_large“: ”http://services.runescape.com/m=itemdb_rs/4173_obj_sprite.gif?id=867“, ”ID“:867, ”类型“:” 弹药“,”typeIcon“:”http://services.runescape.com/m=itemdb_rs/4173_obj_big.gif?id=867“,”名称“:”坚定的刀“,”描述“:”精细平衡的投掷刀。“,”当前“:{”趋势“:”中性“,”价格 “:23},” 今天 “:{” 潮流 “:” 中性 “ ”价格“:0}},{ ”图标“: ”http://www.runescape.com/img/categories/Ammo“, ”icon_large“:”http://services.runescape.com/m=itemdb_rs/4173_obj_sprite.gif?id=804 “,“ID”: 804,“type”:“Ammo”,“typeIcon”:“http://services.runescape.com/m=itemdb_rs/4173_obj_big.gif?id=804”,“name”:“坚持投掷斧头”,“描述”:“精细平衡的投掷斧头。”,“当前”:{ “趋势”: “中性”, “价格”:180}, “今日”:{ “趋势”: “中性”, “价格”:0}}]}

我试过谷歌,但因为我对卷曲和数组的知识是零,我没有进一步。

1 个答案:

答案 0 :(得分:1)

响应看起来像json,所以你可以试试以下。

编辑:

这对我来说很好。

<?php

$response = '{"total":5,"items":[{"icon":"http://services.runescape.com/m=itemdb_rs/4173_obj_sprite.gif?id=4798","icon_large":"http://services.runescape.com/m=itemdb_rs/4173_obj_big.gif?id=4798","id":4798,"type":"Ammo","typeIcon":"http://www.runescape.com/img/categories/Ammo","name":"Adamant brutal","description":"Blunt adamantite arrow...ouch","current":{"trend":"neutral","price":222},"today":{"trend":"neutral","price":0}},{"icon":"http://services.runescape.com/m=itemdb_rs/4173_obj_sprite.gif?id=810","icon_large":"http://services.runescape.com/m=itemdb_rs/4173_obj_big.gif?id=810","id":810,"type":"Ammo","typeIcon":"http://www.runescape.com/img/categories/Ammo","name":"Adamant dart","description":"A deadly throwing dart with an adamant tip.","current":{"trend":"neutral","price":11},"today":{"trend":"neutral","price":0}},{"icon":"http://services.runescape.com/m=itemdb_rs/4173_obj_sprite.gif?id=829","icon_large":"http://services.runescape.com/m=itemdb_rs/4173_obj_big.gif?id=829","id":829,"type":"Ammo","typeIcon":"http://www.runescape.com/img/categories/Ammo","name":"Adamant javelin","description":"An adamant tipped javelin.","current":{"trend":"neutral","price":64},"today":{"trend":"positive","price":"+1"}},{"icon":"http://services.runescape.com/m=itemdb_rs/4173_obj_sprite.gif?id=867","icon_large":"http://services.runescape.com/m=itemdb_rs/4173_obj_big.gif?id=867","id":867,"type":"Ammo","typeIcon":"http://www.runescape.com/img/categories/Ammo","name":"Adamant knife","description":"A finely balanced throwing knife.","current":{"trend":"neutral","price":23},"today":{"trend":"neutral","price":0}},{"icon":"http://services.runescape.com/m=itemdb_rs/4173_obj_sprite.gif?id=804","icon_large":"http://services.runescape.com/m=itemdb_rs/4173_obj_big.gif?id=804","id":804,"type":"Ammo","typeIcon":"http://www.runescape.com/img/categories/Ammo","name":"Adamant throwing axe","description":"A finely balanced throwing axe.","current":{"trend":"neutral","price":180},"today":{"trend":"neutral","price":0}}]}';

$data = json_decode( $response, true );

?>
<table>
    <?php
    foreach( $data['items'] as $row )
    {
        ?>
        <tr>
            <td><?php echo $row['id']; ?></td>
            <td><?php echo $row['type']; ?></td>
            <td><?php echo $row['name']; ?></td>
            <td><img src="<?php echo $row['icon']; ?>" /></td>
        </tr>
        <?php
    }
    ?>
</table>

在您的示例中,响应将是curl_download

的返回值
$response = curl_download('http://services.runescape.com/m=itemdb_rs/api/catalogue/items.json?category=1&alpha=a&page=1');