php - 使用 PHP 从 XML 文件更新 MySQL

标签 php mysql xml

我在这里阅读了许多有用的答案,其中大部分帮助我创建了用于从 XML 文件导入数据的脚本。问题是这次我有额外的部分与图像 url 的女巫也需要更新到 MySQL。
现在,我用 XML 中的数据更新 MySQL,然后使用其他脚本下载所需的图像。在具有 XML 提要的网站改变了它们的结构后,我无法弄清楚如何将数组中的图像 url 更新到 MySQL 行中,以便我可以在那之后下载图像。 即使我选择下载图像而不更新到 MySQL,我也无法下载它们。

这是XML结构

<ArrayOfUnitDTO xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <UnitDTO>
    <Category>Category name</Category>
    <code>863</code>
    <Status>Blocked</Status>
    <RefNo>12345</RefNo>
    <Images>
      <Image>
        <Title>Community</Title>
        <ImageURL>http://imageaddress.com/images/watermark.aspx?imageurl=/uf/1015/GroupUpdate/unit/350/350_Image.jpg&amp;width=640&amp;group=1015&amp;module=1&amp;watermarktype=default&amp;position=Center</ImageURL>
      </Image>
      <Image>
        <Title>Local Area Image</Title>
        <ImageURL>http://imageaddress.com/images/watermark.aspx?imageurl=/uf/1015/GroupUpdate/unit/631/631_Image.jpg&amp;width=640&amp;group=1015&amp;module=1&amp;watermarktype=default&amp;position=Center</ImageURL>
      </Image>
    </Images>
  </UnitDTO>
</ArrayOfUnitDTO>

我在用这个

foreach ($listings ->UnitDTO as $listingInfo) //loop read xml
{
            $RefNo =  $listingInfo->RefNo;
            $Category = $listingInfo->Category;
            $code = $listingInfo->code;
            $Status = $listingInfo->Status;

 mysqli_query($link,"REPLACE INTO UnitDTO (`RefNo`, `Category`, `code`, `Status`) VALUES ('$RefNo', '$Category', '$code', '$Status',)") or die(mysqli_error($link));

}

无论我怎么尝试,我都无法将图像 url 导入数组中的 imageurl MySQL 行。

最佳答案

要从上面的 xml 中获取图像 url,您必须再运行一个 foreach 循环,尝试类似下面的代码并根据您的要求使用它。

foreach ($listings ->UnitDTO as $listingInfo){
    $RefNo =  $listingInfo->RefNo;
    $Category = $listingInfo->Category;
    $code = $listingInfo->code;
    $Status = $listingInfo->Status;
        foreach ($listingInfo->Images->Image as $image){
            echo $image->ImageURL;
        }
}

关于php - 使用 PHP 从 XML 文件更新 MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27143565/

相关文章:

php - php 中的堆叠 Highcharts

php - 如何从 PHP 生成受密码保护的电子表格?

php - 更新mysql列字段中的数据而不删除以前的值

php - mysql和php更改特定id的单个数据

mysql - mysql中的条件计数

php - 从页面 url 中选择带有 id 的表中的当前行

php - 如何在数据库的php sdk4中存储facebook的GraphObject?

iphone - 存储省份、城市并与 plist 协调

javascript - 如何使用标题和标签更好地格式化我的 HTML 表

java - 如何在 Spring Java Config 的单个 MessageListenerContainer 中添加多个 JMS MessageListners