我有这个简单的代码:
$input = '<p>ěščřžýáíé</p><p><img alt="" src="http://www.test.com/img.jpg" style="width: 100px; height: 100px;"></p>';
$dom = new DOMDocument('1.0', 'UTF-8');
$dom->encoding = 'UTF-8';
$dom->loadHTML($input, LIBXML_HTML_NOIMPLIED | LIBXML_HTML_NODEFDTD);
$imgs = $dom->getElementsByTagName('img');
foreach($imgs as $img){
$src = $img->getAttribute('src');
$style = $img->getAttribute('style');
$newSrc = 'http://www.test.com/img001.jpg';
$img->setAttribute( 'src' , $newSrc );
}
$content = $dom->saveHTML();
问题是输出已编码。 我希望输入的字符相同。 我尝试解码失败。使用DOM对象有问题吗?
<p>ěščřžýáíé<p><img alt="" src="http://www.test.com/img001.jpg" style="width: 100px; height: 100px;"></p></p>
答案 0 :(得分:2)
re1, _ := regexp.Compile(`^([A-Z]+)(\s"[^"]+")(\s"[^"]+")?(\s"[^"]+")?$`)
有一些我不了解的“功能”,但是当保存特定文档节点时,如果您然后(\s"[^"]+")?
生成结果,它将起作用...
saveHTML()
给予...
utf8_decode()