将简单的XML列表插入mySQL

时间:2011-12-31 17:00:08

标签: php mysql xml insert

我正在尝试将XML数据插入到mysql数据库中。我遇到的问题是每个标签中都有多个id,所以我的脚本只加载第一个。如何重新编写脚本以将所有id加载到db,每行一个id。

<?php

 require_once 'db-functions.inc.php' ; //custom database functions

 $xmldata = 'http://api.twitter.com/1/followers/ids.xml?cursor=-1&screen_name=aplusk';
 $open = fopen($xmldata, 'r');
 $content = stream_get_contents($open);
 fclose($open);
 $xml = new SimpleXMLElement($content);

 foreach ($xml->ids as $data) 

 {

 $id = $data->id;

 mysql_query("INSERT INTO data (id) 

 VALUES ('$id')");

 };


 // sample of xml I want to insert
 // <id_list>
 // <ids>
 // <id>275168965</id>
 // <id>28245852</id>
 // <id>15112249</id>
 // </ids>
 // <next_cursor>0</next_cursor>
 // <previous_cursor>0</previous_cursor>
 // </id_list>

 ?>

1 个答案:

答案 0 :(得分:0)

这是你应该怎么做的:

$xml = new SimpleXMLElement( file_get_contents( 'http://api.twitter.com/1/followers/ids.xml?cursor=-1&screen_name=aplusk' ) );
foreach ( $xml->ids[ 0 ] as $data ) 
{
    echo( $data . "<br>" );
}

这一点都不直观但是id隐藏在$ xml-&gt; ids [0]中。 您的SQL语句似乎没问题。