⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 function.domnode-append-child.html

📁 php的帮助文档,涉及到PHP的案例和基本语法,以及实际应用内容
💻 HTML
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html> <head>  <title>Adds a new child at the end of the children</title>  <meta http-equiv="content-type" content="text/html; charset=UTF-8"> </head> <body><div style="text-align: center;"> <div class="prev" style="text-align: left; float: left;"><a href="function.domnode-add-namespace.html">DomNode->add_namespace</a></div> <div class="next" style="text-align: right; float: right;"><a href="function.domnode-append-sibling.html">DomNode->append_sibling</a></div> <div class="up"><a href="ref.domxml.html">DOM XML Functions</a></div> <div class="home"><a href="index.html">PHP Manual</a></div></div><hr /><div id="function.domnode-append-child" class="refentry"> <div class="refnamediv">  <h1 class="refname">DomNode-&gt;append_child</h1>  <p class="verinfo">(No version information available, might be only in CVS)</p><p class="refpurpose"><span class="refname">DomNode-&gt;append_child</span> &mdash; <span class="dc-title">   Adds a new child at the end of the children  </span></p> </div> <div class="refsect1 description">  <h3 class="title">Description</h3>  <div class="classsynopsis">   <div class="ooclass"><a href="class.domnode.html" class="classname">DOMNode</a></div>   <div class="methodsynopsis dc-description">    <span class="type">DOMNode</span> <span class="methodname"><b><b>append_child</b></b></span>     ( <span class="methodparam"><span class="type"><a href="class.domnode.html" class="type DOMNode">DOMNode</a></span> <tt class="parameter">$newnode</tt></span>    )</div>  </div>  <p class="para">   This functions appends a child to an existing list of children or creates   a new list of children.  </p> </div> <div class="refsect1 parameters">  <h3 class="title">Parameters</h3>  <p class="para">   <dl>    <dt>     <span class="term"><i><tt class="parameter">newnode</tt></i></span>     <dd>      <p class="para">       The node being appended. It can be created with e.g.       <a href="function.domdocument-create-element.html" class="xref">DomDocument->create_element</a>,       <a href="function.domdocument-create-text-node.html" class="xref">DomDocument->create_text_node</a> etc. or        simply by using any other node.      </p>      <blockquote><p><b class="note">Note</b>:                You can not append a <b class="classname">DOMAttribute</b> using this        method. Use <a href="function.domelement-set-attribute.html" class="xref">DomElement->set_attribute</a>         instead.       <br />      </p></blockquote>     </dd>    </dt>   </dl>  </p> </div> <div class="refsect1 returnvalues">  <h3 class="title">Return Values</h3>  <p class="para">   Returns the appended node on success or <b><tt>FALSE</tt></b> on failure.  </p> </div> <div class="refsect1 changelog">  <h3 class="title">ChangeLog</h3>  <p class="para">   <table class="informaltable">    <colgroup>     <thead valign="middle">      <tr valign="middle">       <th colspan="1">Version</th>       <th colspan="1">Description</th>      </tr>     </thead>     <tbody valign="middle" class="tbody">      <tr valign="middle">       <td colspan="1" rowspan="1" align="left">4.3.0</td>       <td colspan="1" rowspan="1" align="left">        You are not allowed anymore to insert a node from another document.       </td>      </tr>      <tr valign="middle">       <td colspan="1" rowspan="1" align="left">4.3.0</td>       <td colspan="1" rowspan="1" align="left">        Prior to PHP 4.3.0, the new child is duplicated before being         appended.        Therefore the new child is a completely new copy which can be         modified without changing the node which was passed to this function.        If the node passed has children itself, they will be duplicated as         well, which makes it quite easy to duplicate large parts of an XML         document. The return value is the appended child. If you plan to do        further modifications on the appended child you must use the returned         node.       </td>      </tr>      <tr valign="middle">       <td colspan="1" rowspan="1" align="left">4.3.0 and 4.3.1</td>       <td colspan="1" rowspan="1" align="left">        The new child <i><tt class="parameter">newnode</tt></i> is first unlinked from         its existing context, if it&#039;s already a child of DomNode. Therefore        the <i><tt class="parameter">newnode</tt></i> is moved and not copies anymore.        This is the behaviour according to the W3C specifications. If you         need the old behaviour, use <a href="function.domnode-clone-node.html" class="xref">DomNode->clone_node</a> before appending.       </td>      </tr>      <tr valign="middle">       <td colspan="1" rowspan="1" align="left">4.3.2</td>       <td colspan="1" rowspan="1" align="left">        The new child <i><tt class="parameter">newnode</tt></i> is first unlinked from         its existing context, if it&#039;s already in the tree. Same rules apply.       </td>      </tr>     </tbody>    </colgroup>   </table>  </p> </div>  <div class="refsect1 examples">  <h3 class="title">Examples</h3>  <p class="para">   The following example adds a new element node to a fresh document and sets   the attribute <i>align</i> to <i>left</i>.  </p>  <p class="para">   <div class="example">    <p><b>Example #1 Adding a child</b></p>    <div class="example-contents"><div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br />$doc&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">domxml_new_doc</span><span style="color: #007700">(</span><span style="color: #DD0000">"1.0"</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">$node&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">$doc</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">create_element</span><span style="color: #007700">(</span><span style="color: #DD0000">"para"</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">$newnode&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">$doc</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">append_child</span><span style="color: #007700">(</span><span style="color: #0000BB">$node</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">$newnode</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">set_attribute</span><span style="color: #007700">(</span><span style="color: #DD0000">"align"</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">"left"</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>    </div>   </div>  </p>  <p class="para">   The above example could also be written as the following:  </p>  <p class="para">   <div class="example">    <p><b>Example #2 Adding a child</b></p>    <div class="example-contents"><div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br />$doc&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">domxml_new_doc</span><span style="color: #007700">(</span><span style="color: #DD0000">"1.0"</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">$node&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">$doc</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">create_element</span><span style="color: #007700">(</span><span style="color: #DD0000">"para"</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">$node</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">set_attribute</span><span style="color: #007700">(</span><span style="color: #DD0000">"align"</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">"left"</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">$newnode&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">$doc</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">append_child</span><span style="color: #007700">(</span><span style="color: #0000BB">$node</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>    </div>   </div>  </p>  <p class="para">   A more complex example is the one below. It first searches for a certain   element, duplicates it including its children and adds it as a sibling.   Finally a new attribute is added to one of the children of the new sibling   and the whole document is dumped.  </p>  <p class="para">   <div class="example">    <p><b>Example #3 Adding a child</b></p>    <div class="example-contents"><div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br /></span><span style="color: #007700">include(</span><span style="color: #DD0000">"example.inc"</span><span style="color: #007700">);<br /><br />if&nbsp;(!</span><span style="color: #0000BB">$dom&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">domxml_open_mem</span><span style="color: #007700">(</span><span style="color: #0000BB">$xmlstr</span><span style="color: #007700">))&nbsp;{<br />&nbsp;&nbsp;echo&nbsp;</span><span style="color: #DD0000">"Error&nbsp;while&nbsp;parsing&nbsp;the&nbsp;document\n"</span><span style="color: #007700">;<br />&nbsp;&nbsp;exit;<br />}<br /><br /></span><span style="color: #0000BB">$elements&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">$dom</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">get_elements_by_tagname</span><span style="color: #007700">(</span><span style="color: #DD0000">"informaltable"</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">print_r</span><span style="color: #007700">(</span><span style="color: #0000BB">$elements</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">$element&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">$elements</span><span style="color: #007700">[</span><span style="color: #0000BB">0</span><span style="color: #007700">];<br /><br /></span><span style="color: #0000BB">$parent&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">$element</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">parent_node</span><span style="color: #007700">();<br /></span><span style="color: #0000BB">$newnode&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">$parent</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">append_child</span><span style="color: #007700">(</span><span style="color: #0000BB">$element</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">$children&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">$newnode</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">children</span><span style="color: #007700">();<br /></span><span style="color: #0000BB">$attr&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">$children</span><span style="color: #007700">[</span><span style="color: #0000BB">1</span><span style="color: #007700">]-&gt;</span><span style="color: #0000BB">set_attribute</span><span style="color: #007700">(</span><span style="color: #DD0000">"align"</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">"left"</span><span style="color: #007700">);<br /><br /></span><span style="color: #0000BB">$xmlfile&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">$dom</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">dump_mem</span><span style="color: #007700">();<br />echo&nbsp;</span><span style="color: #0000BB">htmlentities</span><span style="color: #007700">(</span><span style="color: #0000BB">$xmlfile</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>    </div>   </div>  </p>  <p class="para">   The above example could also be done with   <a href="function.domnode-insert-before.html" class="xref">DomNode->insert_before</a> instead of   <a href="function.domnode-append-child.html" class="xref">DomNode->append_child</a>.  </p> </div> <div class="refsect1 migration">  <h3 class="title">Migrating to PHP 5</h3>  <p class="para">   You should use <a href="domnode.appendchild.html" class="xref">DOMNode::appendChild</a>.  </p> </div> <div class="refsect1 seealso">  <h3 class="title">See Also</h3>  <p class="para">   <ul class="simplelist">    <li class="member"><a href="function.domnode-insert-before.html" class="xref">DomNode->insert_before</a></li>    <li class="member"><a href="function.domnode-clone-node.html" class="xref">DomNode->clone_node</a></li>   </ul>  </p> </div></div><hr /><div style="text-align: center;"> <div class="prev" style="text-align: left; float: left;"><a href="function.domnode-add-namespace.html">DomNode->add_namespace</a></div> <div class="next" style="text-align: right; float: right;"><a href="function.domnode-append-sibling.html">DomNode->append_sibling</a></div> <div class="up"><a href="ref.domxml.html">DOM XML Functions</a></div> <div class="home"><a href="index.html">PHP Manual</a></div></div></body></html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -