2014-04-08 65 views
0

這是PHP代碼如何刪除由特定的ID的XML節點在php

<?php 
    function delete_book_id($id, $filename = 'books.xml'){ 
     $data = simplexml_load_file($filename); 
     for($i = 0, $length = count($data->resource->book); $i < $length; $i++){ 
     if($data->resource->book[$i]->ID == $id){ 
     unset($data->resource->book[$i]); 
     break; 
    } 
    } 
    file_put_contents($filename, $data->saveXML()); 
    } 
    //SAMPLE USAGE 
    delete_book_id('$id'); 
    ?> 

XML文件中以下

<?xml version="1.0" encoding="utf-8"?> 
<catalogue> 
<resource> 
    <book> 
    <ID>Book 1</ID> 
    <date>today</date> 
    <retdate>tomorrow</retdate> 
    <SID>Student 1</SID> 
    </book> 
    <book> 
    <ID>Book 2</ID> 
    <date>toda</date> 
    <retdate>tomorro</retdate> 
    <SID>Student 2</SID> 
    </book> 

    </resource> 
    </catalogue> 

請幫我得到答案。下面

+3

'$ id'需要是「$ id」或者只是$ id。 – Neel

回答

2

變化:

delete_book_id('$id'); 

要:

delete_book_id($id); 

爲我工作。

+0

其顯示如下錯誤:注意:未定義的變量:id – user3484856

+0

在調用函數之前定義此變量,如: $ id =「Book 1」; delete_book_id($ id); –

+0

thnx摧毀它的工作,但我想要一個更多的幫助可以做到這一點 – user3484856