2011-08-10 55 views
1

我對PHP中的XML操作有疑問。XML操作在PHP中

所以我有一個要求解析一個XML文件,然後在網站上顯示它,這些並不難。但是,然後,我需要讓用戶在窗體中以xml編輯字段。基本上,我將xml文件分爲四個表格,每個表格都有添加,刪除編輯功能。

我這樣做的方式是每次用戶提交表單時,我打開XML,使用fopen讀取它,然後找到要刪除,添加或編輯的位置,然後將其存儲爲新文件,然後刪除原始文件。這個過程工作正常,但涉及大量的I/O處理,並且如果用戶快速進行表單更新,它將會簡單地粉碎,出錯,正在使用的文件或找不到文件或其他東西。

回答

1

爲什麼不使用simpleXML擴展名爲此目的?也許你應該存儲XML文件在DB:

CREATE TABLE IF NOT EXISTS `xml` (
    `id` int(11) NOT NULL AUTO_INCREMENT, 
    `file` text NOT NULL, 
    `isEditedNow` int(1) NOT NULL, 
    PRIMARY KEY (`id`) 
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ; 

所以,你只需要讀取表中的XML文件,然後(當用戶將修改)剛剛更新記錄。