简体   繁体   English

如何设置xml属性并将更改保存到文件?

[英]How to set xml attribute and save changes to file?

I need to change xml attributes using PHP (ie Name, Phone1, Phone2). 我需要使用PHP更改xml属性(即Name,Phone1,Phone2)。 The changed attribute values need to save to the file where the code was taken from. 更改后的属性值需要保存到获取代码的文件中。 Could anyone set me on the right track? 谁能让我走上正确的轨道?

    <PhoneBook>
<Title>TRSA</Title>
<Menu Name="Informational">
<Unit Name="Name Surname" Phone1="476" Phone2="8 888 88 888"         
Phone3="62811" default_photo="Resource:"/>
<Unit Name="John Johnson" Phone1="412" Phone2="" Phone3="62812"         
default_photo="Resource:"/>
<Unit Name="Carl Johnson" Phone1="481" Phone2="8 888 88 888" 
Phone3="22222" default_photo="Resource:"/>
<Unit Name="Carl Johnson" Phone1="481" Phone2="" Phone3="22222" 
default_photo="Resource:"/>
<Unit Name="Carl Johnson" Phone1="427" Phone2="" Phone3="22222" 
default_photo="Resource:"/>
<Unit Name="Carl Johnson" Phone1="414" Phone2="" Phone3="22222" 
default_photo="Resource:"/>
<Unit Name="Carl Johnson" Phone1="414" Phone2="8 888 88 888" 
Phone3="22222" default_photo="Resource:"/>
<Unit Name="Carl Johnson" Phone1="410" Phone2="8 888 88 888" 
Phone3="22222" default_photo="Resource:"/>
</Menu>
<Menu Name="Administration">
<Unit Name="Carl Johnson" Phone1="413" Phone2="8 888 88 888" 
Phone3="22222" default_photo="Resource:"/>
<Unit Name="Carl Johnson" Phone1="450" Phone2="8 888 88 888" 
Phone3="22222" default_photo="Resource:"/>
<Unit Name="Carl Johnson" Phone1="344" Phone2="8 888 88 888" 
Phone3="22222" default_photo="Resource:"/>
<Unit Name="Carl Johnson" Phone1="484" Phone2="" Phone3="52110" 
default_photo="Resource:"/>
<Unit Name="Carl Johnson" Phone1="465" Phone2="8 888 88 888" 
Phone3="22222" default_photo="Resource:"/>
<Unit Name="Carl Johnson " Phone1="522" Phone2="8 888 88 888" 
Phone3="22222" default_photo="Resource:"/>
</Menu>
</PhoneBook>

You can use setAttribute 您可以使用setAttribute

public DOMAttr DOMElement::setAttribute ( string $name , string $value ) 公共DOMAttr DOMElement :: setAttribute(字符串$ name,字符串$ value)

You can simply use the PHP: XMLWriter for this: http://php.net/manual/de/function.xmlwriter-write-element.php 您可以为此简单地使用PHP:XMLWriter: http ://php.net/manual/de/function.xmlwriter-write-element.php

Also for reading XML-Files: http://php.net/manual/en/simplexml.examples-basic.php 也用于读取XML文件: http : //php.net/manual/zh/simplexml.examples-basic.php

Is it a remote XML or local on your webserver? 它是远程XML还是Web服务器上的本地? - The thing is you can not edit remote files on the fly, I think. -问题是,我认为您不能即时编辑远程文件。 The best way is to fetch the old one, change the values while parsing the XML and save it again. 最好的方法是获取旧的,在解析XML时更改值,然后再次保存。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM