我有几个具有不同属性的相同元素,我正在使用SimpleXML访问:
<data>
<seg id="A1"/>
<seg id="A5"/>
<seg id="A12"/>
<seg id="A29"/>
<seg id="A30"/>
</data>
Run Code Online (Sandbox Code Playgroud)
我需要删除id为"A12" 的特定seg元素,我该怎么做?我已经尝试循环遍历seg元素并取消设置特定元素,但这不起作用,元素仍然存在.
foreach($doc->seg as $seg)
{
if($seg['id'] == 'A12')
{
unset($seg);
}
}
Run Code Online (Sandbox Code Playgroud) 尝试编辑使用Excels XML-Namespaces的XML文档:
<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"
xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet">
Run Code Online (Sandbox Code Playgroud)
我需要得到这个结果(需要ss:前缀befire 类型):
<Cell ...><Data ss:Type="String">value</Data></Cell>
Run Code Online (Sandbox Code Playgroud)
我已经查看了无法使用PHP SimpleXML添加命名空间的问题,但这种方法在这里没有帮助.换句话说,按照那里的说明运行它
$data = $cells[$i]->addChild('Data','value');
$data->addAttribute("ss:Type","String","urn:schemas-microsoft-com:office:spreadsheet");
Run Code Online (Sandbox Code Playgroud)
给我
<Cell ...><Data Type="String">value</Data></Cell>
Run Code Online (Sandbox Code Playgroud)
没有ss:前缀.如果我删除urn:前缀,那么我得到了这个
<Cell ...><Data xmlns:ss="schemas-microsoft-com:office:spreadsheet" ss:Type="String">value</Data></Cell>
Run Code Online (Sandbox Code Playgroud)
在任何一种情况下,当我用Excel打开文档时,数据都是不可见的.随着瓮:在SS:缺失和不瓮:定义成为部分 在Excel中无效的元素.