PHP 8.6.0 Beta 1 is available for testing

DOMDocument::createEntityReference

(PHP 5, PHP 7, PHP 8)

DOMDocument::createEntityReference Создать новый узел ссылки на сущность

Описание

public function DOMDocument::createEntityReference(string $name): DOMEntityReference |false

Эта функция создаёт экземпляр класса DOMEntityReference . Узел не будет отображаться в документе до тех пор, пока его не вставят функцией наподобие DOMNode::appendChild() .

Список параметров

name

Содержимое ссылки на сущность, например, ссылка на сущность без & в начале и ; в конце.

Возвращаемые значения

Новый объект класса DOMEntityReference или false в случае возникновения ошибки.

Ошибки

Может выбросить исключение DOMException со следующими кодами ошибок:

DOM_INVALID_CHARACTER_ERR

Возникает, если name содержит недопустимые символы.

Смотрите также

Нашли ошибку?

ИнструкцияИсправлениеСообщение об ошибке
+Добавить

Примечания пользователей 2 notes

up
3
alicewonder at shastaherps dot org
10 years ago
It appears that this does not work with numbered entities, only named entities.
$nbspace = $dom->createEntityReference('nbsp');
works
$nbspace = $dom->createEntityReference('#160');
does not. This makes this function rather useless when generating an XSL unless you modify the XSL doctype to include the named entity for the character you want.
up
0
Tuhin Bepari
12 years ago
<?php
/*Entity is a group of words which print a special symbol.
Like if we want to show copy right symbol in html page then we use &copy; code and browser convert this to actual copyright symbol.
There have lots of entity, you can find them all form http://dev.w3.org/html5/html-author/charref 
if you want to use < or > or both <> into a node value than xml will give and warning or make this value as a node.
So tell the xml parser that < or > is not tag symbol it is a entity.To do that you have to right &lt(<) and &gt;(>) instead of < and > symbol.
Entity references always begin with an ampersand (&) and end with a semicolon (;).
DO not need to use & and ; symbol begin and end of entity.Remove it when you want to use it to DOMDocument::createEntityReference
Then append to to a tag where you want to show this symbol.Like below
*/
$dom=new DOMDocument("1.0","UTF-8");
$example=$dom->createElement("example","This is copyright ");
$entity=$dom->createEntityReference("copy");
$example->appendChild($entity);
$dom->appendChild($example);
echo $dom->saveXML();
output is 
This is copyright ©
+Добавить

AltStyle によって変換されたページ (->オリジナル) /