0

我正在使用基于 XML 的数据库在我的 Web 应用程序中保存大规模数据的记录。我知道如何通过 PHP 中的 XML 标签获取所有数据或特定数据。但我不知道如何使用 PHP 更新存储在 XML 标记中的数据。例如,我想通过使用 PHP 中的 XQuery 来更新以下 XML 标记。

<program id="p00547jm">
    <time>
        <startTime>1003394820</startTime>
        <endTime>1003394826</endTime>
        <epochStart>2001-10-18T08:47:00</epochStart>
        <epochEnd>2001-10-25T08:47:00</epochEnd>
    </time>
    <completeTitle>in_our_time:_democracy</completeTitle>
    <mediaType>audio</mediaType>

我正在使用以下 XQuery 来更新 1 个特定 XML 标记的值:

$query='for $x in doc("coursework")/bbcPrograms/program 
 where $x/completeTitle="'.$single_edit_program_title_hidden.'" 
 and $x/mediaType="'.$single_edit_program_type_hidden.'" and 
 $x/masterBrand="'.$single_edit_masterbrand_hidden.'" and 
 $x/service="'.$single_edit_service_hidden.'"  

 return update value $x/completeTitle[.="'.$single_edit_program_title_hidden.'"] with "'.$single_edit_program_title.'"';

当我们想要更新 1 个特定的 XML 标记值时,它可以正常工作。现在我想让这个 XQuery 用于更新多个 XML 标记的标记值。就像我们通常在 SQL 中所做的那样。SET id='abc' AND name = 'xyz'...

请帮助我这个 Xquery 如何适用于多个标签值更新。

4

0 回答 0