使用PHP在XML中按id删除项目
我想按XML中的id删除节点我的代码如下:使用PHP在XML中按id删除项目,php,xml,Php,Xml,我想按XML中的id删除节点我的代码如下: $id=$_GET["id"]; $usuarios= simplexml_load_file('cart.xml'); if($_GET["action"] == "delete"){ foreach($usuarios->carro as $elemento){ if($elemento['id'] == $id) { echo '<script>alert("delete")<
$id=$_GET["id"];
$usuarios= simplexml_load_file('cart.xml');
if($_GET["action"] == "delete"){
foreach($usuarios->carro as $elemento){
if($elemento['id'] == $id) {
echo '<script>alert("delete")</script>';
unset($elemento['id']);
}
}
}
例如,我想删除id=“2”
,因此输出为:
<?xml version="1.0"?>
<info>
<carro id="0">
<usuario>alex</usuario>
<producto>instict</producto>
<Size>CH</Size>
<cantidad>1</cantidad>
<precio>100</precio>
</carro>
<carro id="1">
<usuario>alex</usuario>
<producto>instict</producto>
<Size>G</Size>
<cantidad>1</cantidad>
<precio>100</precio>
</carro>
<carro id="3">
<usuario>Gera</usuario>
<producto>instict</producto>
<Size>M</Size>
<cantidad>1</cantidad>
<precio>100</precio>
</carro>
</info>
亚历克斯
灌输
中国
1.
100
亚历克斯
灌输
G
1.
100
杰拉
灌输
M
1.
100
更改
$usuarios->carro as$key=>$elemento
然后
unset($usuarios->carro[$key])代码>
然后将结果作为字符串写入新文件
file\u put\u内容('newfile.xml',$usuarios->asXML())代码>嗨,谢谢你的回答,我照你说的做了,但输出是一样的,这里是我的代码$id=$\u GET[“id”]$usuarios=simplexml\u load\u文件('cart.xml');if($\u GET[“action”]==“delete”){foreach($usuarios->carro as$key=>$elemento){if($elemento['id']==id){unset($usuarios->carro[$key]);文件内容('newfile.xml',$usuarios->asXML());echo'alert(“Encontrado”);}}
<?xml version="1.0"?>
<info>
<carro id="0">
<usuario>alex</usuario>
<producto>instict</producto>
<Size>CH</Size>
<cantidad>1</cantidad>
<precio>100</precio>
</carro>
<carro id="1">
<usuario>alex</usuario>
<producto>instict</producto>
<Size>G</Size>
<cantidad>1</cantidad>
<precio>100</precio>
</carro>
<carro id="3">
<usuario>Gera</usuario>
<producto>instict</producto>
<Size>M</Size>
<cantidad>1</cantidad>
<precio>100</precio>
</carro>
</info>