CakeFest 2024: The Official CakePHP Conference

DOMText sınıfı

(PHP 5, PHP 7, PHP 8)

Giriş

DOMText sınıfı DOMCharacterData sınıfından türetilir ve bir DOMElement veya DOMAttr düğümünün metin içeriğini temsil eder.

Sınıf Sözdizimi

class DOMText extends DOMCharacterData {
/* Özellikler */
public readonly string $wholetext;
/* Miras alınan özellikler */
public string $data;
public readonly int $length;
public readonly ?string $nodeName;
public readonly int $nodeType;
public readonly ?DOMNode $parentNode;
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 ?DOMDocument $ownerDocument;
public readonly ?string $namespaceURI;
public ?string $prefix;
public readonly ?string $localName;
public readonly ?string $baseURI;
/* Yöntemler */
public __construct(string $data = "")
public splitText(int $offset): DOMText|false
/* Miras alınan yöntemler */
public DOMCharacterData::deleteData(int $offset, int $count): bool
public DOMCharacterData::replaceData(int $offset, int $count, string $data): bool
public DOMNode::C14N(
    bool $özel = false,
    bool $aAçıklamalı = false,
    ?array $xpath = null,
    ?array $isim_alanları = 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 $torunlar_dahil = false): DOMNode|false
public DOMNode::isEqualNode(?DOMNode $otherNode): bool
public DOMNode::isSameNode(DOMNode $düğüm): bool
public DOMNode::isSupported(string $özellik, string $sürüm): bool
}

Özellikler

wholetext

Mantıken birbirine komşu metin düğümlerinin (eleman, açıklama veya işlem komutları ile ayrılmamış) tüm metinlerini içerir.

Sürüm Bilgisi

Sürüm: Açıklama
8.0.0 Gerçeklenmemiş olan DOMText::replaceWholeText() yöntemi kaldırıldı.

İçindekiler

add a note

User Contributed Notes 1 note

up
1
Trititaty
7 years ago
Text replacement function for DOM.

<?php
function domTextReplace( $search, $replace, DOMNode &$domNode, $isRegEx = false ) {
if (
$domNode->hasChildNodes() ) {
$children = array();
// since looping through a DOM being modified is a bad idea we prepare an array:
foreach ( $domNode->childNodes as $child ) {
$children[] = $child;
}
foreach (
$children as $child ) {
if (
$child->nodeType === XML_TEXT_NODE ) {
$oldText = $child->wholeText;
if (
$isRegEx ) {
$newText = preg_replace( $search, $replace, $oldText );
} else {
$newText = str_replace( $search, $replace, $oldText );
}
$newTextNode = $domNode->ownerDocument->createTextNode( $newText );
$domNode->replaceChild( $newTextNode, $child );
} else {
domTextReplace( $search, $replace, $child, $isRegEx );
}
}
}
}
To Top