Php 使用DOM为一个元素创建多个属性
如何为DOM元素创建多个属性 这里我有一个属性Php 使用DOM为一个元素创建多个属性,php,xml,dom,Php,Xml,Dom,如何为DOM元素创建多个属性 这里我有一个属性 $data = $xml->createElement('enclosure', $rssdata["nNr"]); $enclosure = $xml->createAttribute('type'); $enclosure->value = 'image/jpeg'; $data->appendChild($enclosure); $item->appendChild($data); 但是我需要两个属性,比如UR
$data = $xml->createElement('enclosure', $rssdata["nNr"]);
$enclosure = $xml->createAttribute('type');
$enclosure->value = 'image/jpeg';
$data->appendChild($enclosure);
$item->appendChild($data);
但是我需要两个属性,比如URL的导出
<enclosure type="image/jpeg" url="">1</enclosure>
1
只需按照添加第一个的方式添加另一个即可
$urlAttr = $xml->createAttribute('url');
...
只需按照添加第一个的方式添加另一个
$urlAttr = $xml->createAttribute('url');
...
只需再添加三行:
$data = $xml->createElement('enclosure', $rssdata["nNr"]);
$enclosure = $xml->createAttribute('type'); # creating attribute 1
$enclosure->value = 'image/jpeg'; # setting value
$data->appendChild($enclosure); # adding attribute to element
$url = $xml->createAttribute('url'); # creating attribute 2
$url->value = ''; # setting value
$data->appendChild($url); # adding attribute to element
$item->appendChild($data);
如果您有许多属性要添加,您可以考虑创建一个函数来减少代码复制。 您的变量名可能会混淆。如果重命名
$enclosure
和$data
您的代码可能会变得更清晰、更易于阅读:
$enclosureElement = $xml->createElement('enclosure', $rssdata["nNr"]);
$typeAttribute = $xml->createAttribute('type'); # creating attribute 1
$typeAttribute->value = 'image/jpeg'; # setting value
$enclosureElement->appendChild($typeAttribute); # adding attribute to element
$urlAttribute = $xml->createAttribute('url'); # creating attribute 2
$urlAttribute->value = ''; # setting value
$enclosureElement->appendChild($urlAttribute); # adding attribute to element
$item->appendChild($enclosureElement);
只需再添加三行:
$data = $xml->createElement('enclosure', $rssdata["nNr"]);
$enclosure = $xml->createAttribute('type'); # creating attribute 1
$enclosure->value = 'image/jpeg'; # setting value
$data->appendChild($enclosure); # adding attribute to element
$url = $xml->createAttribute('url'); # creating attribute 2
$url->value = ''; # setting value
$data->appendChild($url); # adding attribute to element
$item->appendChild($data);
如果您有许多属性要添加,您可以考虑创建一个函数来减少代码复制。 您的变量名可能会混淆。如果重命名
$enclosure
和$data
您的代码可能会变得更清晰、更易于阅读:
$enclosureElement = $xml->createElement('enclosure', $rssdata["nNr"]);
$typeAttribute = $xml->createAttribute('type'); # creating attribute 1
$typeAttribute->value = 'image/jpeg'; # setting value
$enclosureElement->appendChild($typeAttribute); # adding attribute to element
$urlAttribute = $xml->createAttribute('url'); # creating attribute 2
$urlAttribute->value = ''; # setting value
$enclosureElement->appendChild($urlAttribute); # adding attribute to element
$item->appendChild($enclosureElement);
使用PHP的DOM扩展,您可以通过使用
domeElement::setAttribute
方法更轻松地向domeElement添加一个或多个属性
表示$enclosure
是您问题中
元素的doElement
:
$enclosure->setAttribute("type", "image/jpeg");
$enclosure->setAttribute("url", "");
只需添加您要求的这两个属性。您可以通过这种方式执行一个、两个或N个属性
背景信息:在XML中,元素只能有一个同名属性
使用PHP的DOM扩展,您可以通过使用
domeElement::setAttribute
方法更轻松地向domeElement添加一个或多个属性
表示$enclosure
是您问题中
元素的doElement
:
$enclosure->setAttribute("type", "image/jpeg");
$enclosure->setAttribute("url", "");
只需添加您要求的这两个属性。您可以通过这种方式执行一个、两个或N个属性
背景信息:在XML中,元素只能有一个同名属性
使用->createAttribute()
也可以设置值
——只需将其添加为第二个参数即可。更简单的方法是:使用setAttribute()
。无需创建一个。使用->createAttribute()
也可以设置值
——只需将其添加为第二个参数即可。更简单的方法是:使用setAttribute()
。最后一个正确而有用的答案:P最后一个正确而有用的答案:P