La classe DOMAttr

(PHP 5, PHP 7, PHP 8)

Introduction

DOMAttr représente un attribut dans l'objet DOMElement.

Synopsis de la classe

class DOMAttr extends DOMNode {
/* Propriétés */
public readonly string $name;
public readonly bool $specified = true;
public string $value;
public readonly ?DOMElement $ownerElement;
public readonly mixed $schemaTypeInfo = null;
/* Propriétés héritées */
public readonly string $nodeName;
public readonly int $nodeType;
public readonly ?DOMNode $parentNode;
public readonly ?DOMElement $parentElement;
public readonly DOMNodeList $childNodes;
public readonly ?DOMNode $firstChild;
public readonly ?DOMNode $lastChild;
public readonly ?DOMNode $previousSibling;
public readonly ?DOMNode $nextSibling;
public readonly ?DOMNamedNodeMap $attributes;
public readonly bool $isConnected;
public readonly ?DOMDocument $ownerDocument;
public readonly ?string $namespaceURI;
public string $prefix;
public readonly ?string $localName;
public readonly ?string $baseURI;
/* Méthodes */
public __construct(string $name, string $value = "")
public isId(): bool
/* Méthodes héritées */
public DOMNode::C14N(
    bool $exclusive = false,
    bool $withComments = false,
    ?array $xpath = null,
    ?array $nsPrefixes = null
): string|false
public DOMNode::C14NFile(
    string $uri,
    bool $exclusive = false,
    bool $withComments = false,
    ?array $xpath = null,
    ?array $nsPrefixes = null
): int|false
public DOMNode::cloneNode(bool $deep = false): DOMNode|false
public DOMNode::getRootNode(array $options = null): DOMNode
public DOMNode::insertBefore(DOMNode $node, ?DOMNode $child = null): DOMNode|false
public DOMNode::isEqualNode(?DOMNode $otherNode): bool
public DOMNode::isSameNode(DOMNode $otherNode): bool
public DOMNode::isSupported(string $feature, string $version): bool
}

Propriétés

name

Le nom de l'attribut.

ownerElement

L'élément qui contient l'attribut ou null.

schemaTypeInfo

Pas encore implémenté, vaut toujours null.

specified

Pas encore implémenté, vaut toujours null.

value

La valeur de l'attribut.

Note:

Notez que les entités XML sont étendues lorsqu'une valeur est définie. Ainsi, le caractère & a une signification spéciale. Définir valeur à lui-même échouera lorsque valeur contient un &. Pour éviter l'expansion des entités, utilisez plutôt DOMElement::setAttribute().

Sommaire

add a note add a note

User Contributed Notes 2 notes

up
2
greubel at nkey dot de
9 years ago
Please take care on debugging DOMAttr related code. This will cause an E_WARNING that retrieving schemaTypeInfo attribute is not implemented yet. An IDE like Eclipse will inspect the object and its member elements. In conjunction with registered error handlers, which will translate the E_WARNING into Exception your debugging session will end unexpectedly. This has caused me some trouble while debugging my PHPUnit test case in eclipse using "Makegood" plugin.

A possible workarround is to deactivate the error handling during debugging using error_reporting(0). Remove the statement after finishing your debugging session.

Notable ticket in Bugtracker: https://bugs.php.net/bug.php?id=61858
And a xdebug tracker ticket: http://bugs.xdebug.org/view.php?id=910
up
1
chregu at php dot net
15 years ago
See also the properties from the inherited class DOMNode ( http://php.net/manual/en/class.domnode.php ), eg. namespaceURI, prefix, localName, etc, especially if you have to deal with namespaced attributes
To Top