将文本放在xml文件中

时间:2013-04-11 11:29:36

标签: php xml

我有简单的xml文件(product.xml): -

<products>
  <product_id value="1">
    <tab_id value="351">
      <tab_name value="test1"/>
      <dist_activity value="10066"/>
      <dist_region value="4332"/>
    </tab_id>
  </product_id>
  <product_id value="2">
    <tab_id value="352">
      <tab_name value="test2"/>
      <dist_activity value="10067"/>
      <dist_region value="4333"/>
    </tab_id>
  </product_id>
</products>

我有两个文本文件: - 其中一个包含dist_activity id名称为activity.txt
第二个包含dist_region id名称为region.txt
这是activity.txt; -

10066,10067,10068,10069,10070,10071,10072,5

这是region.txt: -

4332,4333,4334,4335,4336,4337,4338,4339

我想在product.xml文件中创建更多product_id,并在dist_activity文件中逐个设置值dist_regiontxt。 我试试这个: -

    <?php 
$xml = simplexml_load_file('product.xml');
$employee = $xml->addChild('product_id value="3"');
$employee->addChild('tab_id value="253"');
$employee->addChild('tab_name value="test3"');
$employee->addchild('dist_activity value="10068"');
$employee->addchild('dist_region value="10069"');
file_put_contents('prod.xml', $xml->asXML());
?>

1 个答案:

答案 0 :(得分:0)

杰克,我看到你的问题有两个问题:

(1)错误使用 addChild

<example>
    <lisa kevin="thomas">cathy</lisa>
</example>

lisa = node name, child-node of <example>
cathy = node value
kevin = attribute name (of node lisa)
thomas = attribute value

syntax:
addChild(name, value)
addAttribute(name, value)

http://www.php.net/manual/en/simplexmlelement.addchild.php

(2)没有关于如何从逗号分隔文件中提取值 activity.txt以及其他txt文件的解决方案......

我建议file_get_contentsexplode

在你尝试过某些东西之后,请随意回答具体问题,玩得开心!