首页 > 解决方案 > 如何从 PHP 中的 API 读取 XML 数据?

问题描述

我正在尝试以 XML 格式从 PHP 中的 API 读取数据。我试过了

<?php
$xml = simplexml_load_file('http://api...');
$pdo = new PDO('mysql:dbname=test;host=localhost', 'root', '');
foreach ($xml->PredictionCollection as $collection) {
    $stmt = $pdo->prepare('INSERT INTO table (IntersectionId, LaneNumber, NumberOfBits) VALUES (NOW(), ?, ?)');
    $stmt->execute(array(
        $_SERVER['REMOTE_ADDR'],
        $lead->campaign_name
    ));
}     
?>

但它返回给我的错误如下:

警告::simplexml_load_file()http
://api:1:解析器错误:需要开始标记,
在第 2 行的 C:\wamp64\www\readfromanapi.php 中找不到“<”

警告:simplexml_load_file():
{"PredictionCollection":[{"IntersectionId":1001,"LocatioCode":"gr_the","TimeStamp
in C:\wamp64\www\readfromanapi.php 在第 2 行

警告:simplexml_load_file(): ^
在 C:\wamp64\www\readfromanapi.php 第 2 行

致命错误:在 C:\
wamp64
\www\readfromanapi.php 第 3 行 (!)
PDOException: SQLSTATE[HY000] [1049]
第 3 行 C:\wamp64\www\readfromanapi.php 中的未知数据库“测试”


标签: phpapiread-data

解决方案


推荐阅读