我想改變question為22222的值,這個值是在前台傳入的,不過我不知道應該如何傳,應該如何操作了?最好是用DOMDocument類來操作
3 admin 111111 A 11 B 22 C 33 D 44 22222 A 22 B 11 C 44 D 33 33333 A 444 B 222 C 333 D 2111
回複討論(解決方案)
你想怎麼改?
$fn = '你的xml檔案名稱';$tag = 'question'; //待修改的節點名$val = '22222'; //待修改的節點值,和 $tag 一起用於定位$replace = 'xxx'; //修改後的值$xml = simplexml_load_file($fn);$p = $xml->xpath("//{$tag}[.='$val']");$p[0][0] = $replace;$xml->asXML($fn); //寫回去
PHP code?12345678$fn = '你的xml檔案名稱';$tag = 'question'; //待修改的節點名$val = '22222'; //待修改的節點值,和 $tag 一起用於定位$replace = 'xxx'; //修改後的值$xml = simplexml_load_file($fn);$p = $xml->xpath("//{$tag}[.=……
$p[0][0]是什麼意思啊?
xpath 返回的是所有符合條件節點數組(是一個二維的對象數組)
$p [0][0] 表示第一個匹配到的節點
$p[0] [0] 表示節點中的第一個元素
xpath 返回的是所有符合條件節點數組(是一個二維的對象數組)
$p[0][0] 表示第一個匹配到的節點
$p[0][0] 表示節點中的第一個元素
那按照你這樣說的話不就是匹配了question為111111,不是question為222222吧
$xml->xpath("//{$tag}[.='$val']");
實際執行的是
$xml->xpath("//question[.='22222']");
所以對於你的資料,只會匹配到 22222