cvs: peardoc /ja/package/php/php-compat usage.xml /ja/package/structures structures-bibtex.xml /ja/package/structures/structures-bibtex
exporting.xml intro.xml warnings.xml

From: Date: Sun, 06 Aug 2006 07:56:06 +0000
Subject: cvs: peardoc /ja/package/php/php-compat usage.xml /ja/package/structures structures-bibtex.xml /ja/package/structures/structures-bibtex
exporting.xml intro.xml warnings.xml
Groups: php.pear.doc 
Request: Send a blank email to pear-doc+get-8237@lists.php.net to get a copy of this message
takagi Sun Aug 6 07:56:06 2006 UTC Added files: /peardoc/ja/package/structures/structures-bibtex warnings.xml intro.xml exporting.xml /peardoc/ja/package/structures structures-bibtex.xml /peardoc/ja/package/php/php-compat usage.xml Log: added japanese manual.

http://cvs.php.net/viewvc.cgi/peardoc/ja/package/structures/structures-bibtex/warnings.xml?view=markup&rev=1.1 Index: peardoc/ja/package/structures/structures-bibtex/warnings.xml +++ peardoc/ja/package/structures/structures-bibtex/warnings.xml <?xml version="1.0" encoding="utf-8" ?> <!-- $Revision: 1.1 $ --> <!-- EN-Revision: 1.4 Maintainer: takagi Status: ready --> <refentry id="package.structures.structures-bibtex.warnings"> <refnamediv> <refname>警告</refname> <refpurpose> <classname>Structures_BibTex</classname> での警告の使用法 </refpurpose> </refnamediv> <refsect1 id="package.structures.structures-bibtex.warnings.overview"> <title>概要</title> <para> <classname>Structures_BibTex</classname> クラスには、 パース中に発生した警告を収集する仕組みがあります。 「警告」とは、BibTex ソース中にある、 間違ってはいるが処理を中断させるほどでもないもののことです、 例えば、cite エントリが重複している場合などがあてはまります。 これらの警告を参考にすると、BibTex コードの品質を より向上させることができます。警告を発生させるかどうかは、 validate オプションで制御します。デフォルトでは警告を発生させます。 警告を発生させたくない場合は、<function>setOption</function> メソッドをこのように使用します。 <example> <title>警告を発生させないようにする</title> <programlisting role="php"> <![CDATA[ require_once 'Structures/BibTex.php'; $bibtex = new Structures_BibTex(); $bibtex->setOption('validate', false); ]]> </programlisting> </example> </para> </refsect1> <refsect1 id="package.structures.structures-bibtex.warnings.usage"> <title>使用法</title> <para> 警告の内容は warnings という名前の配列に保存されます。 この配列は外部からもアクセス可能です。警告が存在するかどうかを調べるには <function>hasWarning</function> メソッドを使用します。 このメソッドは、警告が存在する場合に true、 存在しない場合に false を返します。 <example> <title>警告を調べる</title> <programlisting role="php"> <![CDATA[ require_once 'Structures/BibTex.php'; $bibtex = new Structures_BibTex(); $ret = $bibtex->loadFile('foo.bib'); if (PEAR::isError($ret)) { die($ret->getMessage()); } $bibtex->parse(); if ($bibtex->hasWarning()) { print '警告があります!<br />'; } ]]> </programlisting> </example> 個々の警告自体はハッシュテーブルで、次のようなキーが存在します。 <itemizedlist> <listitem> <para> <parameter>warning</parameter> - 警告の型。 </para> </listitem> <listitem> <para> <parameter>entry</parameter> - 警告が発生した行。 </para> </listitem> <listitem> <para> <parameter>wholeentry</parameter> - 警告が発生したエントリ全体。 </para> </listitem> </itemizedlist> すべての警告の型、そして発生した行を表示するには、 このようにします。 <example> <title>警告を調べる</title> <programlisting role="php"> <![CDATA[ require_once 'Structures/BibTex.php'; $bibtex = new Structures_BibTex(); $ret = $bibtex->loadFile('foo.bib'); if (PEAR::isError($ret)) { die($ret->getMessage()); } $bibtex->parse(); if ($bibtex->hasWarning()) { foreach ($bibtex->warnings as $warning) { echo '警告: '.$warning['warning'].'<br />'; echo '行: '.$warning['entry'].'<hr />'; } } ]]> </programlisting> </example> また、すべての警告を消去するには <function>clearWarnings</function> メソッドを使用します。 </para> </refsect1> <refsect1 id="package.structures.structures-bibtex.warnings.wanringtypes"> <title>警告の型</title> <para> 以下のような型の警告があります。 <itemizedlist> <listitem> <para> <parameter>WARNING_AT_IN_BRACES</parameter> - 波括弧で囲まれた内部では、@ を使用することができません。 </para> </listitem> <listitem> <para> <parameter>WARNING_ESCAPED_DOUBLE_QUOTE_INSIDE_DOUBLE_QUOTES</parameter> - ダブルクォートで囲まれた内部では、 エスケープされたダブルクォートを使用することができません。 </para> </listitem> <listitem> <para> <parameter>WARNING_UNBALANCED_AMOUNT_OF_BRACES</parameter> - 値の中での波括弧の数 (開始括弧と終了括弧) が対応していません。 エントリ全体でこの数が間違っている場合、パースに失敗します。 しかし、ある特定のエントリだけで間違っている場合は単に警告を発生するだけです。 結果としてはパースは失敗しませんが、 波括弧の開始・終了が対応していないためにこの警告が発生します。 </para> </listitem> <listitem> <para> <parameter>WARNING_MULTIPLE_ENTRIES</parameter> - 各エントリは、それぞれ一意の文字列で識別されます。 この警告が発生するのは、同じ識別子のエントリが 2 つ以上存在するときです。 </para> </listitem> <listitem> <para> <parameter>WARNING_LINE_WAS_NOT_CONVERTED</parameter> - この警告が発生するのは、エクスポート中に (例えば RTF や HTML などで)、マッチするデータがないために エントリが無視されたときです。変換を行うためには、 title、journal、year あるいは authors のうち、 最低ひとつのエントリが存在する必要があります。 </para> </listitem> </itemizedlist> </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 sgml-parent-document:nil sgml-default-dtd-file:"../../../../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 --> http://cvs.php.net/viewvc.cgi/peardoc/ja/package/structures/structures-bibtex/intro.xml?view=markup&rev=1.1 Index: peardoc/ja/package/structures/structures-bibtex/intro.xml +++ peardoc/ja/package/structures/structures-bibtex/intro.xml <?xml version="1.0" encoding="utf-8" ?> <!-- $Revision: 1.1 $ --> <!-- EN-Revision: 1.4 Maintainer: takagi Status: ready --> <refentry id="package.structures.structures-bibtex.intro"> <refnamediv> <refname>導入</refname> <refpurpose> <classname>Structures_BibTex</classname> について </refpurpose> </refnamediv> <refsect1 id="package.structures.structures-bibtex.intro.overview"> <title>概要</title> <para> このパッケージは、BibTex ファイルに保存された情報にアクセスするための メソッドを提供します。パース時に、データの検証を行うこともできます。 さらに、BibTex 文字列を作成したり RTF 文字列を作成したりすることもサポートしています。 </para> </refsect1> <refsect1 id="package.structures.structures-bibtex.intro.examples"> <title>例</title> <example> <title>BibTex ファイルを読み込み、パース結果を配列で表示する</title> <programlisting role="php"> <![CDATA[ require_once 'Structures/BibTex.php'; $bibtex = new Structures_BibTex(); $ret = $bibtex->loadFile('foo.bib'); if (PEAR::isError($ret)) { die($ret->getMessage()); } $bibtex->parse(); echo '<pre>'; print_r($foo->data); echo '</pre>'; ]]> </programlisting> </example> </refsect1> <refsect1 id="package.structures.structures-bibtex.intro.storeddata"> <title>保存されたデータ</title> <para> データは、クラス変数 <varname>data</varname> に保存されます。 この変数はリストになっており、各エントリが、ひとつの bibtex エントリを表すハッシュテーブルとなっています。 ハッシュテーブルのキーが bibtex のキーを表し、 それに対応する値がハッシュテーブルの値となります。 次のようなキーがあります。 <itemizedlist> <listitem> <para> <parameter>cite</parameter> - LaTeX のソースで引用する際に使用されるキー。 </para> </listitem> <listitem> <para> <parameter>type</parameter> - エントリの種類。例えば techreport、book など。 </para> </listitem> <listitem> <para> <parameter>author</parameter> - 著者。 このエントリの値自体がハッシュテーブルのリストとなり、 各ハッシュテーブルが著者を表します。ハッシュテーブルの内容については後で説明します。 </para> </listitem> <listitem> <para> <parameter>title</parameter> - エントリのタイトル。 </para> </listitem> </itemizedlist> </para> </refsect1> <refsect1 id="package.structures.structures-bibtex.intro.author"> <title>著者</title> <para> 先ほど説明したように、著者の情報はリストに保存されます。 各エントリがそれぞれひとりの著者を表し、それぞれがハッシュテーブルを持っています。 ハッシュテーブルは first、von、last そして jr の 4 つのキーで構成されます。 それぞれのキーについて説明します。 <itemizedlist> <listitem> <para> <parameter>first</parameter> - 著者のファーストネーム。 </para> </listitem> <listitem> <para> <parameter>von</parameter> - 中には、名前に 'von' のような部分が含まれる人もいます。これは、通常は貴族の印です。 </para> </listitem> <listitem> <para> <parameter>last</parameter> - 著者の姓。 </para> </listitem> <listitem> <para> <parameter>jr</parameter> - 中には、父と同じ名前の著者もいます。 その場合、この値が jr となります。逆に、 息子と同じ名前の著者の場合は、この値が sen となります。 </para> </listitem> </itemizedlist> </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 sgml-parent-document:nil sgml-default-dtd-file:"../../../../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 --> http://cvs.php.net/viewvc.cgi/peardoc/ja/package/structures/structures-bibtex/exporting.xml?view=markup&rev=1.1 Index: peardoc/ja/package/structures/structures-bibtex/exporting.xml +++ peardoc/ja/package/structures/structures-bibtex/exporting.xml <?xml version="1.0" encoding="utf-8" ?> <!-- $Revision: 1.1 $ --> <!-- EN-Revision: 1.1 Maintainer: takagi Status: ready --> <refentry id="package.structures.structures-bibtex.exporting"> <refnamediv> <refname>エクスポート</refname> <refpurpose> <classname>Structures_BibTex</classname> を使用したデータのエクスポート </refpurpose> </refnamediv> <refsect1 id="package.structures.structures-bibtex.exporting.overview"> <title>概要</title> <para> <classname>Structures_BibTex</classname> クラスが提供するメソッドを使用すると、 クラスに保存されたデータをエクスポートすることができます。 現在は、次のフォーマットに対応しています。 <itemizedlist> <listitem> <para> <parameter>BibTeX</parameter> - 全データを BibTeX でエクスポートします </para> </listitem> <listitem> <para> <parameter>RTF</parameter> - 条件にマッチするデータを RTF フォーマットのリストでエクスポートします </para> </listitem> <listitem> <para> <parameter>HTML</parameter> - 条件にマッチするデータを HTML のリストでエクスポートします </para> </listitem> </itemizedlist> </para> </refsect1> <refsect1 id="package.structures.structures-bibtex.exporting.bibtex"> <title>BibTeX</title> <para> 基本的な機能として、当然 BibTeX フォーマットでのエクスポートが可能です。 これは、単に <function>bibTex</function> メソッドを起動するだけです。 <example> <title>BibTeX フォーマットでのエクスポート</title> <programlisting role="php"> <![CDATA[ require_once 'Structures/BibTex.php'; $bibtex = new Structures_BibTex(); $ret = $bibtex->loadFile('foo.bib'); if (PEAR::isError($ret)) { die($ret->getMessage()); } $bibtex->parse(); echo 'BibTeX フォーマットにしたデータ:<br />'; echo $bibtex->bibTex(); ]]> </programlisting> </example> </para> </refsect1> <refsect1 id="package.structures.structures-bibtex.exporting.rtf"> <title>RTF</title> <para> この機能は、データを Word にインポートするために作成されました。 Word は (もちろん Open Office や kword も)、 RTF フォーマットを読み込むことができます。 そのためには、出力データを 'somefile.rtf' という名前で保存して それを Word で開くだけです。Windows ユーザもこれで満足でしょう。 この機能を使用するには、<function>rtf</function> メソッドをコールします。 <example> <title>RTF フォーマットでのエクスポート</title> <programlisting role="php"> <![CDATA[ require_once 'Structures/BibTex.php'; $bibtex = new Structures_BibTex(); $ret = $bibtex->loadFile('foo.bib'); if (PEAR::isError($ret)) { die($ret->getMessage()); } $bibtex->parse(); echo 'RTF フォーマットにしたデータ:<br />'; echo $bibtex->rtf(); ]]> </programlisting> </example> </para> <para> 各エントリのデフォルトの書式は、まず最初に著者名がきて、 次に (ダブルクォートで囲まれた太字の) タイトル、 それから (斜体の) 学会誌名、そして最後に年となります。 デフォルトの書式を変更するには、クラス変数 rtfstring をオーバーライドします。デフォルトの rtfstring は 'AUTHORS, "{\b TITLE}", {\i JOURNAL}, YEAR' となっています。文字列 AUTHORS、TITLE、JOURNAL および YEAR は、対応する値に置き換えられます。 <example> <title>異なる RTF 文字列による RTF フォーマットでのエクスポート</title> <programlisting role="php"> <![CDATA[ require_once 'Structures/BibTex.php'; $bibtex = new Structures_BibTex(); $ret = $bibtex->loadFile('foo.bib'); if (PEAR::isError($ret)) { die($ret->getMessage()); } $bibtex->parse(); $bibtex->rtfstring = 'AUTHORS, "TITLE", JOURNAL, YEAR'; echo 'RTF フォーマットにしたデータ (しかし今回は文字装飾はしない):<br />'; echo $bibtex->rtf(); ]]> </programlisting> </example> </para> </refsect1> <refsect1 id="package.structures.structures-bibtex.exporting.html"> <title>HTML</title> <para> この機能は、単にシンプルな HTML を作成します。 デフォルトの書式は rtf の場合と同じです。これを使用するには <function>html</function> メソッドをコールします。 <example> <title>HTML フォーマットでのエクスポート</title> <programlisting role="php"> <![CDATA[ require_once 'Structures/BibTex.php'; $bibtex = new Structures_BibTex(); $ret = $bibtex->loadFile('foo.bib'); if (PEAR::isError($ret)) { die($ret->getMessage()); } $bibtex->parse(); echo 'HTML フォーマットにしたデータ:<br />'; echo $bibtex->html(); ]]> </programlisting> </example> </para> <para> RTF エクスポートの場合と同様、デフォルトの HTML 文字列は オーバーライドすることが可能です。デフォルトの文字列はクラス変数 htmlstring に保存されており、 <![CDATA[AUTHORS, "<strong>TITLE</strong>", <em>JOURNAL</em>, YEAR<br />]]> のようになっています。 <example> <title>異なる HTML 文字列による HTML フォーマットでのエクスポート</title> <programlisting role="php"> <![CDATA[ require_once 'Structures/BibTex.php'; $bibtex = new Structures_BibTex(); $ret = $bibtex->loadFile('foo.bib'); if (PEAR::isError($ret)) { die($ret->getMessage()); } $bibtex->parse(); $bibtex->htmlstring = 'AUTHORS, "TITLE", JOURNAL, YEAR'; echo 'HTML フォーマットにしたデータ (しかし今回は文字装飾はしない):<br />'; echo $bibtex->html(); ]]> </programlisting> </example> </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 sgml-parent-document:nil sgml-default-dtd-file:"../../../../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 --> http://cvs.php.net/viewvc.cgi/peardoc/ja/package/structures/structures-bibtex.xml?view=markup&rev=1.1 Index: peardoc/ja/package/structures/structures-bibtex.xml +++ peardoc/ja/package/structures/structures-bibtex.xml <?xml version="1.0" encoding="utf-8" ?> <!-- $Revision: 1.1 $ --> <!-- EN-Revision: 1.3 Maintainer: takagi Status: ready --> <sect1 id="package.structures.structures-bibtex"> <title>Structures_BibTex</title> <para> BibTex データをパースして配列に変換します。 また、それを BibTex および RTF でエクスポートします。 </para> &package.structures.structures-bibtex.intro; &package.structures.structures-bibtex.warnings; &package.structures.structures-bibtex.exporting; </sect1> <!-- 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 sgml-parent-document:nil sgml-default-dtd-file:"../../../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 --> http://cvs.php.net/viewvc.cgi/peardoc/ja/package/php/php-compat/usage.xml?view=markup&rev=1.1 Index: peardoc/ja/package/php/php-compat/usage.xml +++ peardoc/ja/package/php/php-compat/usage.xml <?xml version="1.0" encoding="utf-8" ?> <!-- $Revision: 1.1 $ --> <!-- EN-Revision: 1.1 Maintainer: takagi Status: ready --> <refentry id="package.php.php-compat.usage"> <refnamediv> <refname>高度な使用法</refname> <refpurpose>高度な使用法のためのテクニックの説明</refpurpose> </refnamediv> <refsect1> <title>高度な使用法</title> <para> 可搬性の高いコードを作成するには、 ネイティブ関数がすべて存在する状態を保証するのが一番です。 スクリプト内に PHP_Compat の記述を埋め込んでいくとコードがめちゃくちゃになってしまい、 コードの移植作業がたいへんになってしまいます。 </para> <para> この問題を解決するにはいくつかの方法があります。 まず最初の方法は、すべてのドキュメントの先頭でインクルードされるファイルに load 文を追加してしまうこと。もうひとつの方法 (こちらのほうがお勧めです) は、<filename>php.ini</filename> の項目 <literal>php_auto_append</literal> を使用することです。 これは <filename>.htaccess</filename> ファイルで設定できますし、 実際のコードには何も手を入れる必要がありません。 </para> <para> 仮にファイルの名前が <filename>phpcompat.php</filename> であるとすると、<filename>.htaccess</filename> に記述する内容は <literal>php_value php_auto_append phpcompat.php</literal> となります。この <filename>phpcompat.php</filename> ファイルには、 次のページで説明する loadVersion あるいは loadFunction/loadConstant メソッドを記述します。 </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 sgml-parent-document:nil sgml-default-dtd-file:"../../../../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 -->
« previous php.pear.doc (#8237) next »