Благодаря потребностям пользовательских хранилищ («почему» не важно здесь, спасибо!) Я должен сохранить HTML <a>
ссылки в определенном формате, как это:Как я могу предотвратить html-объекты с PHP DOMDocument :: saveHTML()?
myDOMNode->setAttribute("href", "{{{123456}}}");
Все отлично работает, пока я не позову saveHTML()
на содержащий DOMDocument. Это убивает его, так как он кодирует {
в %7B
.
Это устаревшее приложение, в котором href = "{{{123456}}}" работает как заполнитель. Парсер синтаксического анализа ищет этот шаблон точно (unencoded) и не может быть изменен.
У меня нет выбора, кроме как сделать это таким образом.
Я не могу получить htmldecode() результат.
Этот HTML-код никогда не будет отображаться как это, это просто необходимость хранения.
Благодарим за помощь!
Примечание: Я огляделся в течение 2 часов, но ни одно из предлагаемого решения не работало для меня. Для тех, кто будет слепо отмечать вопрос как дубликат: прокомментируйте и дайте мне знать.
Действительно это закодировать его. Но это не объясняет, что вы подразумеваете под «это убивает». Это URL, они могут быть закодированы, без проблем. Просто чтобы вы могли видеть, что я не шучу, я привел пример: http://www.ergobase.nl/test25.html. Посмотрите исходный код, он закодирован, нажмите ссылку, он работает! Вау. Поэтому, пожалуйста, скажите мне, что вы подразумеваете под «это убивает»? –
Вы правы, ссылка будет работать, но это устаревшее приложение, где href = "{{{123456}}}" работает как заполнитель. Парсер синтаксического анализа ищет этот шаблон точно (unencoded) и не может быть изменен. –
Что произойдет, если вы используете 'html_entity_decode()' после 'saveHTML()' и перед тем, как отправить его в синтаксический анализатор командной строки? –