总有人间一两风,填我十万八千梦

PHP XMLWriterwriteAttribute 用法 手册 | 示例代码

PHP开发手册 归档 467℃ 0评论

XMLWriter::writeAttribute

xmlwriter_write_attribute

(PHP 5 >= 5.1.2, PHP 7, PECL xmlwriter >= 0.1.0)

XMLWriter::writeAttributexmlwriter_write_attributeWrite full attribute

说明

面向对象风格

XMLWriter::writeAttribute ( string $name , string $value ) : bool

过程化风格

xmlwriter_write_attribute ( resource $xmlwriter , string $name , string $value ) : bool

Writes a full attribute.

参数

xmlwriter

仅用于过程调用。被修改的 XMLWriter resource。此资源来自于对 xmlwriter_open_uri()xmlwriter_open_memory() 的调用。

name

The name of the attribute.

value

The value of the attribute.

返回值

成功时返回 TRUE, 或者在失败时返回 FALSE

参见

用户贡献的笔记

Paul

If you intermix writing sub-elements and attributes, any attempt to write attributes after the first sub-element will fail and return false:

<?php
$xml
= new XMLWriter();
$xml->openMemory();

$xml->startElement('element');
$xml->writeAttribute('attr1', '0');
$xml->writeElement('subelem', '0');
var_dump($xml->writeAttribute('attr2', '0'));
$xml->endElement();

echo $xml->flush();
?>

Outputs:

bool(false)
<element attr1="0"><subelem>0</subelem></element>

This is because this is a forward-only writer and the start tags are already finished. There is no going back to add more attributes later, there is no place to put attr2. This is exactly how it is supposed to work.

Jason Hughes

If you intermix writing sub-elements and attributes, any attributes that are written after the first sub-element are ignored/discarded:

<?php
$xml
->startElement('element');
 
$xml->writeAttribute('attr1', 0);
 
$xml->writeElement('subelem', 0);
 
$xml->writeAttribute('attr2', 0);
$xml->endElement();
?>

Outputs:

<element attr1=0>
  <subelem>0</subelem>
</element>

This is stupid, but the way it works as of PHP 5.2.4.

转载请注明:悠然品鉴 » PHP XMLWriterwriteAttribute 用法 手册 | 示例代码

喜欢 (0)or分享 (0)
发表我的评论
取消评论

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
Open Popup

致:那些天天发邮件购买网站的RZ们

  • 我只是博客不更新了,不代表我域名上没有其他服务在运行,PS:服务器2027年到期。
    况且,你们自己心里很清楚你们买域名是干嘛的!不要在垃圾邮件OK?
    随便测试一下你们的 mail/domain 信息,笑死~~ 但凡有一个正经的,我都会回复一下。