Php html_实体_解码在XML dom节点值中不起作用
我有test.xml文件,希望在其中对这些节点值进行编码: 你能告诉我有什么问题吗 首先:Php html_实体_解码在XML dom节点值中不起作用,php,xml,entity,decode,entities,Php,Xml,Entity,Decode,Entities,我有test.xml文件,希望在其中对这些节点值进行编码: 你能告诉我有什么问题吗 首先: 使用库的全部目的是自动完成编码和解码 如果您插入一个literal,那么整个原因就是为html编码一些样式标记,因为:b这将是粗体文本/b呈现,因为这将是粗体文本,而不是真正的粗体text@KukoricaJános-XML对HTML格式没有丝毫概念。首先,谢谢你的回答。我知道php和html正在将这些编码的字符转换为它们的正常形式,但在我的例子中,我需要使用正常形式,如:或其他任何形式,因为我为xml
,那么整个原因就是为html编码一些样式标记,因为:b这将是粗体文本/b呈现,因为这将是粗体文本,而不是真正的粗体text@KukoricaJános-XML对HTML格式没有丝毫概念。首先,谢谢你的回答。我知道php和html正在将这些编码的字符转换为它们的正常形式,但在我的例子中,我需要使用正常形式,如:或其他任何形式,因为我为xml文件使用的css在其编码后不起作用。所以我想做的就是将所有编码的值替换为它们的真实形式,这样css就可以工作了。@KukoricaJános-但你不必这么做。请再次阅读我的编辑,如果有不清楚的地方,请随时要求进一步澄清。我确实从wysiwyg编辑器中获取字符串,该编辑器在和中进行标记,直到我将CSS文件添加到XML中,这才是问题。在CSS中,im将标签和其他标签声明为字体重量:粗体;发射型计算机断层扫描仪。因此,如果在浏览器窗口中打开xml文件,则标记中的文本格式为粗体。但是,只有在我的XML文件中有,而不是≶b$gt;这没什么错。你所经历的是预期的(唯一有效的)行为。
<section id="1">
<title id="2">></title>
<title id="2"><</title>
<title id="2"><</title>
</section>
$dom = new DOMDocument;
$dom->load("test.xml");
$titles = $dom->getElementsByTagName('title');
foreach ($titles as $title) {
$title->nodeValue=html_entity_decode($title->nodeValue);
}
$dom->save("success.xml")
<?php
$dom = new DOMDocument;
$dom->load("test.xml");
$titles = $dom->getElementsByTagName('title');
foreach ($titles as $title) {
$newNode = $dom->createCDATASection($title->nodeValue);
$title->nodeValue = null;
$title->appendChild($newNode);
}
$dom->save("success.xml");
<?xml version="1.0"?>
<section id="1">
<title id="2"><![CDATA[>]]></title>
<title id="2"><![CDATA[<]]></title>
<title id="2"><![CDATA[<]]></title>
</section>
$dom = new DOMDocument;
$dom->load("test.xml");
$titles = $dom->getElementsByTagName('title');
foreach ($titles as $title) {
var_dump($title->nodeValue);
}
string(1) ">"
string(1) "<"
string(1) "<"
echo 'O\'Brian';
$.get('ajax/data.php', function(data) {
$('.result').text(data);
});
$.get('ajax/data.php', function(data) {
$('.result').html(data);
});