PHP.mk документација

DOMXPath::registerPhpFunctionNS

Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.

domxpath.registerphpfunctionns.php PHP.net прокси Преводот се освежува
Оригинал на PHP.net
Патека domxpath.registerphpfunctionns.php Локална патека за оваа страница.
Извор php.net/manual/en Оригиналниот HTML се реупотребува и локално се стилизира.
Режим Прокси + превод во позадина Кодовите, табелите и белешките остануваат читливи во истиот тек.
DOMXPath::registerPhpFunctionNS

Референца за `domxpath.registerphpfunctionns.php` со подобрена типографија и навигација.

domxpath.registerphpfunctionns.php

DOMXPath::registerPhpFunctionNS

(PHP >= 8.4.0)

DOMXPath::registerPhpFunctionNS(PHP >= 8.4.0)

= NULL

public DOMXPath::registerPhpFunctionNS(string $namespaceURI, string $name, callable $callable): void

Регистрирајте PHP функција како именувана XPath функција

Параметри

namespaceURI
URI на именскиот простор.
name
Локално име на функцијата во именскиот простор.
callable
Овој метод овозможува користење на PHP функција како именувана XPath функција во XPath изразите.

Errors/Exceptions

  • Фрла ValueError ако името на повикот не е валидно.
  • Фрла ValueError if options содржи невалидна опција.
  • Фрла ValueError if overrideEncoding е непознато кодирање.
  • Фрла TypeError ако даден повик не може да се повика.

Вратени вредности

Не се враќа вредност.

Примери

PHP функцијата што ќе се повика кога XPath функцијата ќе се повика во XPath изразот. Кога листа од јазли се поминува како параметар на повикот, тие се низи што содржат совпаднати DOM јазли.

<?php

$xml
= <<<EOB
<books>
<book>
<title>PHP Basics</title>
<author>Jim Smith</author>
<author>Jane Smith</author>
</book>
<book>
<title>PHP Secrets</title>
<author>Jenny Smythe</author>
</book>
<book>
<title>XML basics</title>
<author>Joe Black</author>
</book>
</books>
EOB;

$doc = new DOMDocument();
$doc->loadXML($xml);

$xpath = new DOMXPath($doc);

// Register the my: namespace (required)
$xpath->registerNamespace("my", "urn:my.ns");

// Register PHP function
$xpath->registerPHPFunctionNS(
'urn:my.ns',
'substring',
fn (array
$arg1, int $start, int $length) => substr($arg1[0]->textContent, $start, $length)
);

// Call substr function on the book title
$nodes = $xpath->query('//book[my:substring(title, 0, 3) = "PHP"]');

echo
"Found {$nodes->length} books starting with 'PHP':\n";
foreach (
$nodes as $node) {
$title = $node->getElementsByTagName("title")->item(0)->nodeValue;
$author = $node->getElementsByTagName("author")->item(0)->nodeValue;
echo
"$title by $author\n";
}

?>

Горниот пример ќе прикаже нешто слично на:

Found 2 books starting with 'PHP':
PHP Basics by Jim Smith
PHP Secrets by Jenny Smythe

Белешки од корисници

Нема белешки од корисници за оваа страница.
На оваа страница

Автоматски outline од активната документација.

Насловите ќе се појават тука по вчитување.

Попрегледно читање

Примерите, changelog табелите и user notes се визуелно издвоени за да не се губат во долгата содржина.

Брз совет Користи го outline-от Скокни директно на главните секции од активната страница.
Извор Оригиналниот линк останува достапен Кога ти треба целосен upstream context, отвори го PHP.net во нов tab.