Проблема PHP с cURL - PullRequest
       8

Проблема PHP с cURL

0 голосов
/ 24 марта 2010

привет, у меня проблема с cURL и php. Я использую API и хочу отображать только результаты. Вот мой скрипт php + curl

<?php
$file = "http://api.openkvk.nl/php/".rawurlencode("SELECT * FROM kvk WHERE kvks='20147376'");
$ch = curl_init();

// set URL and other appropriate options
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_URL, $file);
curl_setopt($ch, CURLOPT_HEADER, 0);

// grab URL and pass it to the browser
curl_exec($ch);

// close cURL resource, and free up system resources
curl_close($ch);
?>

и результат, который я получаю, таков:

array(
array("RESULT" => array(
 "TYPES"=>
    array(
        "int", "bigint", "varchar", "varchar", "varchar", "varchar", "varchar", "int", "int", "smallint", "smallint", "int"
    ),
 "HEADER"=>
    array("id", "kvk", "bedrijfsnaam", "adres", "postcode", "plaats", "type", "kvks", "sub", "bedrijfsnaam_size", "adres_size", "verhuisd"),
 "ROWS"=>
    array(
        array("1008714", "20147376", "Stichting OpenGeo", "Spinellihof 44", "4463GP", "Goes", "Rechtspersoon", "20147376", NULL, "17", "14", "0")
    )
 )));

Ответы [ 2 ]

2 голосов
/ 24 марта 2010

Ваш скрипт выводит данные, а не возвращает их. Добавьте эту строку:

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

И затем присвойте curl_exec некоторой переменной:

$result = curl_exec($ch);

Похоже, что API возвращает некоторую информацию META, такую ​​как типы полей. Если вам это не нужно, просто поработайте с элементом 'ROWS'

print_r($result['ROWS']);

Это будет выглядеть так:

array(
"1008714","20147376","Stichting OpenGeo","Spinellihof 44","4463GP","Goes","Rechtspersoon","20147376",NULL,"17","14","0"
)

Вы можете пройти через это:

for($i=0; $i<count($result['ROWS']); $i++)
{
    echo $result['HEADER'][$i].': '.$result['ROWS'][$i].'<br />';
}
0 голосов
/ 24 марта 2010

/ редактировать

мы получили это отсортировано в как получить значение ключа массива с помощью curl (php)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...