【发布时间】:2015-12-11 17:42:47
【问题描述】:
我正在尝试从数据库中获取数据并使用 DOM 将其写入 xml 文件。
$doc = new DomDocument('1.0', 'UTF-8');
$doc->preserveWhiteSpace = false;
$doc->formatOutput = true;
$root = $doc->createElement('root');
$doc->appendChild($root);
$blocks = $doc->createElement('blocks');
$root->appendChild($blocks);
while($result_array = mysqli_fetch_assoc($result))
{
$cms_block = $doc->createElement('cms_block');
foreach($result_array as $fieldname => $fieldvalue)
{
/*This is part that is not working*/
$key = $doc->createElement($fieldname);
$cms_block->appendChild($key);
$value = $doc->createTextNode($fieldvalue);
$key->appendChild($value);
}
$stores = $doc->createElement('stores');
$cms_block->appendChild($stores);
$item = $doc->createElement('item');
$stores->appendChild($item);
$itemvalue = $doc->createTextNode('0');
$item->appendChild($itemvalue);
$blocks->appendChild($cms_block);
}
上面的代码可以正常工作,并且主要完成我需要它做的事情,但是它在 foreach 循环中失败,并且我试图在 foreach 中添加的元素和值不起作用。
$result_array = mysqli_fetch_assoc($result) 示例
Array ( [title] => Footer Links [identifier] => footer_links [is_active] => 1 )
数组([title] => 页脚链接 [identifier] => footer_links [is_active] => 1)
如果有人能告诉我我在 foreach 循环中做错了什么,这不会将我从数据库获取的数据添加到 xml 文件中,那真的会对我有所帮助。
【问题讨论】: