이 문제에 대한 최선의 해결책은 XSLT를 사용하는 것이지만,이 문제를 내 문제에 적용하는 방법을 모르겠습니다.PHP의 DOMDocument를 사용할 때 퍼센트 인코딩 href 속성 사용하지 말것
기본적으로 DOMDocument는 전달 된 URL (href
속성)의 이스케이프 작업을 훌륭하게 수행하고 있지만 사실은 Twig/Django 스타일 템플릿을 작성하는 데 사용하고 있습니다. 차라리 혼자 남겨두고 싶습니다. . 여기에 구체적인 예는 "문제"를 보여주는입니다 :
<?php
$doc = new DOMDocument();
$doc->loadHTML('<html><body>Test<br><a href="{{variable}}"></a></body></html>');
echo $doc->saveHTML();
다음과 같은 출력한다 :
<html><body>Test<br><a href="%7B%7Bvariable%7D%7D"></a></body></html>
은하지 퍼센트 인코딩, href
속성 수 있습니까?
이 아닌 경우 간결하고 안정적인 해결 방법을 제안 할 수 있습니까? 나는 다른 처리를하고 있으며, DOMDocument 사용은 유지되어야 할 것이다. 아마도 사전/사후 처리 트릭일까요?
DOM은 기존 문서를 조작하기에 좋은 곳입니다, 그러나 건물 새로운 문서를 처음부터, 그것은 문자열 작업을 사용하는 것이 낫습니다. 특히 "html과 비슷한 모양의"템플릿을 만들 때 더욱 그렇습니다. –
저는 실제로 기존 문서를 조작하고 있습니다. 이 문제를 명확하게 설명하는 가능한 가장 짧은 샘플 코드입니다. –
기본적으로이 예제에서 사용 된 문자열은'file_get_contents()', * 등을 통해로드되었을 것입니다. –