Skip to content

Commit e82473a

Browse files
committed
Fix XIncludes/XPointer Error / sync with en.
Failed XIncludes, manual parts will be missing. Inspect temp/xinclude-debug.xml for context. Failed targets are: - domxpath.registerphpfunctions..errors - domxpath.registerphpfunctions..errors
1 parent 76d63b4 commit e82473a

File tree

1 file changed

+47
-13
lines changed

1 file changed

+47
-13
lines changed

reference/dom/domxpath/registerphpfunctions.xml

Lines changed: 47 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<!-- $Revision$ -->
3-
<!-- EN-Revision: 2bd9a67c8c6c5961189f868364837a5c3ba7e063 Maintainer: takagi Status: ready -->
4-
3+
<!-- EN-Revision: c1f37a6c270aadbbb3da56a3973ffd62197adf2b Maintainer: takagi Status: ready -->
54
<refentry xml:id="domxpath.registerphpfunctions" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
65
<refnamediv>
76
<refname>DOMXPath::registerPhpFunctions</refname>
@@ -49,6 +48,25 @@
4948
</para>
5049
</refsect1>
5150

51+
<refsect1 role="errors" xml:id="domxpath.registerphpfunctions..errors">
52+
&reftitle.errors;
53+
<itemizedlist>
54+
<listitem>
55+
<simpara>
56+
コールバック名が正しくない場合、  
57+
<exceptionname>ValueError</exceptionname> がスローされます。
58+
</simpara>
59+
</listitem>
60+
&dom.errors.compliant.common;
61+
<listitem>
62+
<simpara>
63+
指定されたコールバックが callable でない場合、
64+
<exceptionname>TypeError</exceptionname> がスローされます。
65+
</simpara>
66+
</listitem>
67+
</itemizedlist>
68+
</refsect1>
69+
5270
<refsect1 role="changelog">
5371
&reftitle.changelog;
5472
<informaltable>
@@ -60,6 +78,17 @@
6078
</row>
6179
</thead>
6280
<tbody>
81+
<row xml:id="domxpath.registerphpfunctions..changelog.errors">
82+
<entry>8.4.0</entry>
83+
<entry>
84+
コールバック名が正しくない場合、
85+
<exceptionname>ValueError</exceptionname>
86+
がスローされるようになりました。
87+
callable でない値を指定した場合、
88+
<exceptionname>TypeError</exceptionname>
89+
がスローされるようになりました。
90+
</entry>
91+
</row>
6392
<row>
6493
<entry>8.4.0</entry>
6594
<entry>
@@ -71,7 +100,7 @@
71100
</tgroup>
72101
</informaltable>
73102
</refsect1>
74-
103+
75104
<refsect1 role="examples">
76105
&reftitle.examples;
77106
<para>
@@ -109,15 +138,15 @@
109138
<![CDATA[
110139
<?php
111140
$doc = new DOMDocument;
112-
$doc->load('book.xml');
141+
$doc->load('examples/book-simple.xml');
113142
114143
$xpath = new DOMXPath($doc);
115144
116145
// 名前空間 php: を登録します (必須)
117146
$xpath->registerNamespace("php", "http://php.net/xpath");
118147
119148
// PHP の関数を登録します (無制限)
120-
$xpath->registerPHPFunctions();
149+
$xpath->registerPhpFunctions();
121150
122151
// substr 関数を book の title に適用します
123152
$nodes = $xpath->query('//book[php:functionString("substr", title, 0, 3) = "PHP"]');
@@ -149,15 +178,15 @@ PHP Secrets by Jenny Smythe
149178
<![CDATA[
150179
<?php
151180
$doc = new DOMDocument;
152-
$doc->load('book.xml');
181+
$doc->load('examples/book-simple.xml');
153182
154183
$xpath = new DOMXPath($doc);
155184
156185
// 名前空間 php: を登録します (必須)
157186
$xpath->registerNamespace("php", "http://php.net/xpath");
158187
159188
// PHP の関数を登録します (has_multiple 限定)
160-
$xpath->registerPHPFunctions("has_multiple");
189+
$xpath->registerPhpFunctions("has_multiple");
161190
162191
function has_multiple($nodes) {
163192
// author が複数ある場合に true を返します
@@ -176,7 +205,7 @@ foreach ($books as $book) {
176205
</programlisting>
177206
&example.outputs.similar;
178207
<screen>
179-
<![CDATA[
208+
<![CDATA[
180209
Books with multiple authors:
181210
PHP Basics
182211
]]>
@@ -185,19 +214,24 @@ PHP Basics
185214
</para>
186215
<para>
187216
<example>
188-
<title><methodname>DOMXPath::registerPHPFunctions</methodname> with a <type>callable</type></title>
217+
<title><methodname>DOMXPath::registerPhpFunctions</methodname> <type>callable</type> の例</title>
189218
<programlisting role="php">
190-
<![CDATA[
219+
<![CDATA[
191220
<?php
192221
$doc = new DOMDocument;
193-
$doc->load('book.xml');
222+
$doc->load('examples/book-simple.xml');
223+
194224
$xpath = new DOMXPath($doc);
225+
195226
// 名前空間 php: を登録します (必須)
196227
$xpath->registerNamespace("php", "http://php.net/xpath");
228+
197229
// PHP の関数を登録します (has_multiple 限定)
198-
$xpath->registerPHPFunctions(["has_multiple" => fn ($nodes) => count($nodes) > 1]);
230+
$xpath->registerPhpFunctions(["has_multiple" => fn ($nodes) => count($nodes) > 1]);
231+
199232
// 複数の author がいる book のみを取り出します
200233
$books = $xpath->query('//book[php:function("has_multiple", author)]');
234+
201235
echo "Books with multiple authors:\n";
202236
foreach ($books as $book) {
203237
echo $book->getElementsByTagName("title")->item(0)->nodeValue . "\n";
@@ -216,7 +250,7 @@ PHP Basics
216250
</example>
217251
</para>
218252
</refsect1>
219-
253+
220254
<refsect1 role="seealso">
221255
&reftitle.seealso;
222256
<para>

0 commit comments

Comments
 (0)