svn: /phpdoc/ja/trunk/reference/dom/domxpath/ registerphpfunctions.xml

From: Date: Sat, 07 Aug 2010 23:36:09 +0000
Subject: svn: /phpdoc/ja/trunk/reference/dom/domxpath/ registerphpfunctions.xml
Groups: php.doc.ja 
Request: Send a blank email to doc-ja+get-2774@lists.php.net to get a copy of this message
takagi Sat, 07 Aug 2010 23:36:09 +0000 Revision: http://svn.php.net/viewvc?view=revision&revision=301979 Log: add Japanese translation. Changed paths: A phpdoc/ja/trunk/reference/dom/domxpath/registerphpfunctions.xml Added: phpdoc/ja/trunk/reference/dom/domxpath/registerphpfunctions.xml =================================================================== --- phpdoc/ja/trunk/reference/dom/domxpath/registerphpfunctions.xml (rev 0) +++ phpdoc/ja/trunk/reference/dom/domxpath/registerphpfunctions.xml 2010-08-07 23:36:09 UTC (rev 301979) @@ -0,0 +1,194 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- $Revision$ --> +<!-- EN-Revision: 294367 Maintainer: takagi Status: ready --> + +<refentry xml:id="domxpath.registerphpfunctions" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"> + <refnamediv> + <refname>DOMXPath::registerPhpFunctions</refname> + <refpurpose>PHP の関数を XPath 関数として登録する</refpurpose> + </refnamediv> + + <refsect1 role="description"> + &reftitle.description; + <methodsynopsis> + <modifier>public</modifier> <type>void</type><methodname>DOMXPath::registerPhpFunctions</methodname> + <methodparam choice="opt"><type>mixed</type><parameter>restrict</parameter></methodparam> + </methodsynopsis> + <para> + このメソッドは、PHP の関数を XPath 式の中で使えるようにします。 + </para> + + </refsect1> + + <refsect1 role="parameters"> + &reftitle.parameters; + <para> + <variablelist> + <varlistentry> + <term><parameter>restrict</parameter></term> + <listitem> + <para> + このパラメータを使って、特定の関数のみを XPath からコールできるように制限することができます。 + </para> + <para> + このパラメータには、文字列 (関数名) あるいは関数名の配列を指定します。 + </para> + </listitem> + </varlistentry> + </variablelist> + </para> + </refsect1> + + <refsect1 role="returnvalues"> + &reftitle.returnvalues; + <para> + &return.void; + </para> + </refsect1> + + <refsect1 role="examples"> + &reftitle.examples; + <para> + 次の例では、以下のような内容の <filename>book.xml</filename> を使います。 + </para> + <para> + <example> + <title>book.xml</title> + <programlisting role="xml"> +<![CDATA[ +<?xml version="1.0" encoding="UTF-8"?> +<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> +]]> + </programlisting> + </example> + </para> + <para> + <example> + <title><methodname>DOMXPath::registerPHPFunctions</methodname> と <literal>php:functionString</literal> の例</title> + <programlisting role="php"> +<![CDATA[ +<?php +$doc = new DOMDocument; +$doc->load('book.xml'); + +$xpath = new DOMXPath($doc); + +// 名前空間 php: を登録します (必須) +$xpath->registerNamespace("php", "http://php.net/xpath"); + +// PHP の関数を登録します (無制限) +$xpath->registerPHPFunctions(); + +// substr 関数を book の title に適用します +$nodes = $xpath->query('//book[php:functionString("substr", 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"; +} + +?> +]]> + </programlisting> + &example.outputs.similar; + <screen> +<![CDATA[ +Found 2 books starting with 'PHP': +PHP Basics by Jim Smith +PHP Secrets by Jenny Smythe +]]> + </screen> + </example> + </para> + <para> + <example> + <title><methodname>DOMXPath::registerPHPFunctions</methodname> と <literal>php:function</literal> の例</title> + <programlisting role="php"> +<![CDATA[ +<?php +$doc = new DOMDocument; +$doc->load('book.xml'); + +$xpath = new DOMXPath($doc); + +// 名前空間 php: を登録します (必須) +$xpath->registerNamespace("php", "http://php.net/xpath"); + +// PHP の関数を登録します (has_multiple 限定) +$xpath->registerPHPFunctions("has_multiple"); + +function has_multiple($nodes) { + // author が複数ある場合に true を返します + return count($nodes) > 1; +} +// 複数の author がいる book のみを取り出します +$books = $xpath->query('//book[php:function("has_multiple", author)]'); + +echo "Books with multiple authors:\n"; +foreach ($books as $book) { + echo $book->getElementsByTagName("title")->item(0)->nodeValue . "\n"; +} + +?> +]]> + </programlisting> + &example.outputs.similar; + <screen> +<![CDATA[ +Books with multiple authors: +PHP Basics +]]> + </screen> + </example> + </para> + </refsect1> + + <refsect1 role="seealso"> + &reftitle.seealso; + <para> + <simplelist> + <member><methodname>DOMXPath::registerNamespace</methodname></member> + <member><methodname>DOMXPath::query</methodname></member> + <member><methodname>DOMXPath::evaluate</methodname></member> + </simplelist> + </para> + </refsect1> + +</refentry> + +<!-- Keep this comment at the end of the file +Local variables: +mode: sgml +sgml-omittag:t +sgml-shorttag:t +sgml-minimize-attributes:nil +sgml-always-quote-attributes:t +sgml-indent-step:1 +sgml-indent-data:t +indent-tabs-mode:nil +sgml-parent-document:nil +sgml-default-dtd-file:"~/.phpdoc/manual.ced" +sgml-exposed-tags:nil +sgml-local-catalogs:nil +sgml-local-ecat-files:nil +End: +vim600: syn=xml fen fdm=syntax fdl=2 si +vim: et tw=78 syn=sgml +vi: ts=1 sw=1 +--> Property changes on: phpdoc/ja/trunk/reference/dom/domxpath/registerphpfunctions.xml ___________________________________________________________________ Added: svn:keywords + Id Rev Revision Date LastChangedDate LastChangedRevision Author LastChangedBy HeadURL URL

« previous php.doc.ja (#2774) next »