hirokawa Sat Nov 3 22:50:21 2001 EDT
Modified files:
/phpdoc/ja/appendices migration4.xml
/phpdoc/ja/chapters config.xml
/phpdoc/ja/functions mail.xml
Log:
updated translation.
Index: phpdoc/ja/appendices/migration4.xml
diff -u phpdoc/ja/appendices/migration4.xml:1.4 phpdoc/ja/appendices/migration4.xml:1.5
--- phpdoc/ja/appendices/migration4.xml:1.4 Sat Jul 7 18:25:10 2001
+++ phpdoc/ja/appendices/migration4.xml Sat Nov 3 22:50:20 2001
@@ -1,7 +1,7 @@
<appendix id="migration4">
<title>PHP 3.0からPHP 4.0への移行</title>
- <section>
+ <section id='migration4.changes'>
<title>PHP 4.0での変更点</title>
<para>
PHP 4.0 とこれに組み込まれた Zend
エンジンは、PHPの性能と機能を大
@@ -15,7 +15,150 @@
</para>
</section>
- <section>
+ <section id="migration4.php4.with.php3">
+ <title>PHP 3とPHP 4を同時に実行する</title>
+ <simpara>
+
+最近のオペレーティングシステムでは、バージョン管理及びスコープ監理
+
+を行う機能が提供されています。この機能により、1つのApacheサーバ上
+ のモジュールとしてPHP 3とPHP
+4を同時に実行することが可能です。
+ </simpara>
+ <simpara>
+
+この機能は、以下のプラットフォーム上での動作が確認されています。
+ </simpara>
+ <itemizedlist>
+ <listitem>
+ <simpara>
+ 最近のbinutils (binutils 2.9.1.0.25 でテスト済み) を備えたLinux
+ </simpara>
+ </listitem>
+ <listitem>
+ <simpara>
+ Solaris 2.5以降
+ </simpara>
+ </listitem>
+ <listitem>
+ <simpara>
+ FreeBSD (3.2, 4.0 でテスト済み)
+ </simpara>
+ </listitem>
+ </itemizedlist>
+ <para>
+ この機能を使用するには、PHP3 および PHP4
+でAPXS(--with-apxs)および
+
+必要なリンク拡張(--enable-versioning)を指定します。それ以外の場合、
+ 通常の命令が使用されます。例えば、
+ <informalexample>
+ <programlisting>
+$ ./configure \
+ --with-apxs=/apache/bin/apxs \
+ --enable-versioning \
+ --with-mysql \
+ --enable-track-vars
+ </programlisting>
+ </informalexample>
+ </para>
+ </section>
+
+ <section id="migration4.configuration">
+ <title>設定ファイルの移行</title>
+ <para>
+ グローバル設定ファイル<filename>php3.ini</filename>は、名前が
+ <filename>php.ini</filename>に変更となりました。
+ </para>
+ <para>
+
+Apache設定ファイルの場合、変更点はやや多くなっています。PHPモジュー
+ ルにより認識されるMIME型が変更となりました。
+ <informalexample>
+ <programlisting>
+application/x-httpd-php3 --> application/x-httpd-php
+application/x-httpd-php3-source --> application/x-httpd-php-source
+ </programlisting>
+ </informalexample>
+ </para>
+ <para>
+
+以下の構文を使用することにより、(サーバに組み込まれているバージョ
+
+ンに基づき)両方のバージョンで動作する設定ファイルを作成することが
+ 可能です。
+ <informalexample>
+ <programlisting>
+AddType application/x-httpd-php3 .php3
+AddType application/x-httpd-php3-source .php3s
+
+AddType application/x-httpd-php .php
+AddType application/x-httpd-php-source .phps
+ </programlisting>
+ </informalexample>
+ </para>
+ <simpara>
+ 加えて、Apache用のPHPディレクティブが変更となっています。
+ </simpara>
+ <para>
+ PHP
+4.0以降、PHPに関連するApacheディレクティブは以下の4種類のみと
+ なっています。
+ <informalexample>
+ <programlisting>
+php_value [PHPディレクティブ名] [値]
+php_flag [PHPディレクティブ名] [On|Off]
+php_admin_value [PHPディレクティブ名] [値]
+php_admin_flag [PHPディレクティブ名] [On|Off]
+ </programlisting>
+ </informalexample>
+ </para>
+ <simpara>
+ Adminの値とそれ以外の値には次の2つの違いがあります。
+ </simpara>
+ <itemizedlist>
+ <listitem>
+ <simpara>
+ Admin
+の値(またはフラグ)は、サーバ全体のApache設定ファイル(すな
+ わちhttpd.conf)でのみ設定可能です。
+ </simpara>
+ </listitem>
+ <listitem>
+ <simpara>
+
+通常の値(またはフラグ)はセーフモードのようなある種のPHPディレク
+
+ティブを制御できません(セーフモードの設定を.htaccessで上書きで
+
+きるとしたら、セーフモードの目的は達成されなくなります)。逆に
+ Admin値では全てのPHPディレクティブの値を修整可能です。
+ </simpara>
+ </listitem>
+ </itemizedlist>
+ <simpara>
+ 移行の過程をより容易にするために、PHP 4.0
+にはApache設定命令と.
+ htaccessファイルをPHP 3.0とPHP
+4.0の両方で動作するように変換するス
+
+クリプトがバンドルされています。これらのスクリプトは、MIME型の行を
+ 変換しません。これらは自分で変更を行う必要があります。
+ </simpara>
+ <para>
+
+Apache設定ファイルを変換するために、(scripts/apache/ディレクトリに
+ ある)apconf-conv.sh スクリプトを実行して下さい。 例えば、
+ <informalexample>
+ <programlisting>
+~/php4/scripts/apache:# ./apconf-conv.sh /usr/local/apache/conf/httpd.conf
+ </programlisting>
+ </informalexample>
+ </para>
+ <simpara>
+ 元の設定ファイルは、httpd.conf.origに保存されます。
+ </simpara>
+ <para>
+ .htaccess
+ファイルを変換するには、(同じくscripts/apache/ディレクト
+ リにある)aphtaccess-conv.sh スクリプトを実行して下さい。
+ <informalexample>
+ <programlisting>
+~/php4/scripts/apache:# find / -name .htaccess -exec ./aphtaccess-conv.sh {} \;
+ </programlisting>
+ </informalexample>
+ </para>
+ <simpara>
+
+同様に古い.htaccessファイルには.origが付加されて保存されます。
+ </simpara>
+ <simpara>
+
+この変換スクリプトは、awkがインストールされていることを必要としま
+ す。
+ </simpara>
+ </section>
+
+ <section id='migration4.parser'>
<title>パーサの動作</title>
<para>
パーサと実行は、二つの完全に分割されたステップになりました。ファイ
@@ -51,10 +194,10 @@
</para>
</section>
- <section>
+ <section id='migration4.error-reporting'>
<title>エラー出力</title>
- <section>
+ <section id='migration4.error-reporting.config'>
<title>設定変更</title>
<para>
PHP 3.0
では、エラー出力レベルは異なったエラーレベルを意味する数
@@ -104,7 +247,7 @@
</warning>
</section>
- <section>
+ <section id='migration4.error-reporting.additions'>
<title>追加された警告メッセージ</title>
<para>
既存のPHP
3.0コードの多くは、このコードのように非常に悪いスタイル
@@ -139,7 +282,7 @@
</section>
- <section>
+ <section id='migration4.initializers'>
<title>イニシャライザ</title>
<para>
静的変数とクラスメンバのイニシャライザは、PHP
3.0では有効な式なら
@@ -154,7 +297,7 @@
</para>
</section>
- <section>
+ <section id='migration4.empty'>
<title><literal>empty("0")</literal></title>
<para>
恐らく最も動作上の問題のある変更は、<function>empty</function>の動
@@ -170,7 +313,7 @@
</para>
</section>
- <section>
+ <section id='migration4.missing'>
<title>廃止された関数</title>
<para>
PHP 4.0
は多くの新しい機能と拡張を導入していますが、同時にいくつか
@@ -183,7 +326,7 @@
止されています。
</para>
- <section>
+ <section id='migration4.missing.concept'>
<title>コンセプトの変更により廃止された関数</title>
<para>
PHP 4.0
ではパースと実行が分割されており、実行時に(現在、Zendエン
@@ -201,7 +344,7 @@
</para>
</section>
- <section>
+ <section id='migration4.deprecate'>
<title>推奨されない関数と拡張</title>
<para>
Adabas および Solid
データベース拡張は、もはや推奨されません。
@@ -209,7 +352,7 @@
</para>
</section>
- <section>
+ <section id='migration4.unset'>
<title><function>unset</function>のステータスの変更</title>
<para>
<function>unset</function>はまだ使用可能ですが、PHP 4.0ではリテラ
@@ -232,7 +375,7 @@
</section>
</section>
- <section>
+ <section id='migration4.extensions'>
<title>PHP 3.0 拡張機能</title>
<para>
PHP 3.0 用に描かれた拡張は、PHP 4.0
ではバイナリレベルでもソースレ
@@ -242,7 +385,7 @@
</para>
</section>
- <section>
+ <section id='migration4.strings'>
<title>文字列中の変数置換</title>
<para>
PHP 4.0
では文字列中の新しい変数置換の機構が追加されています。文字
@@ -269,7 +412,7 @@
</para>
</section>
- <section>
+ <section id='migration4.cookies'>
<title>クッキー</title>
<para>
PHP 3.0 は、コード中の<function>setcookie</function>のコールとは逆
Index: phpdoc/ja/chapters/config.xml
diff -u phpdoc/ja/chapters/config.xml:1.15 phpdoc/ja/chapters/config.xml:1.16
--- phpdoc/ja/chapters/config.xml:1.15 Wed Jul 18 08:38:00 2001
+++ phpdoc/ja/chapters/config.xml Sat Nov 3 22:50:20 2001
@@ -653,64 +653,6 @@
</para>
</sect2>
- <sect2 id="ini.sect.mail">
- <title>メール設定用命令</title>
- <variablelist>
-
- <varlistentry id="ini.smtp">
- <term>
- <parameter>SMTP</parameter>
- <type>文字列</type>
- </term>
- <listitem>
- <para>
- Windows 版の PHP が <function>mail</function> 関数によるメール
- の送信に使用する SMTP サーバーの DNS 名または IP
アドレス。
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry id="ini.sendmail-from">
- <term>
- <parameter>sendmail_from</parameter>
- <type>文字列</type>
- </term>
- <listitem>
- <para>
- Windows 版の PHP から送信するメールにおいて
- "From:" に使用するメールアドレス。
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry id="ini.sendmail-path">
- <term>
- <parameter>sendmail_path</parameter>
- <type>文字列</type>
- </term>
- <listitem>
- <para>
- <command>sendmail</command> プログラムがある場所。
- 通常は、
- <filename>/usr/sbin/sendmail</filename> または、
- <filename>/usr/lib/sendmail</filename> です。
- <command>configure</command> が sendmail の場所を探してくれま
-
すが、失敗する場合は、ここでそのパスをセットことが可能です。
- </para>
- <para>
- sendmail
を使用していないシステムは、替わりに動作させるマシン
- のメールシステムが提供する sendmail
のラッパーまたは代替品をこ
- の命令に指定する必要があります。例えば、
- <ulink url="&url.qmail;">Qmail</ulink>
ユーザーは、通常、この命令に
- <filename>/var/qmail/bin/sendmail</filename>
- をセットすることができます。
- </para>
- </listitem>
- </varlistentry>
-
- </variablelist>
- </sect2>
-
<sect2 id="ini.sect.safe-mode">
<title>セーフモード設定用命令</title>
<variablelist>
Index: phpdoc/ja/functions/mail.xml
diff -u phpdoc/ja/functions/mail.xml:1.13 phpdoc/ja/functions/mail.xml:1.14
--- phpdoc/ja/functions/mail.xml:1.13 Sun Aug 12 20:33:48 2001
+++ phpdoc/ja/functions/mail.xml Sat Nov 3 22:50:21 2001
@@ -5,6 +5,61 @@
<simpara>
<function>mail</function>関数によりメールを送ることができます。
</simpara>
+
+ <variablelist>
+ <title>Mail設定ディレクティブ</title>
+
+ <varlistentry id="ini.smtp">
+ <term>
+ <parameter>SMTP</parameter>
+ <type>string</type>
+ </term>
+ <listitem>
+ <para>
+
+SMTPサーバのDNS名またはIPアドレス。Windows環境で動作するPHPは、
+
+<function>mail</function>巻数で送信するメールに関してこの設定値
+ を使用します。
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry id="ini.sendmail-from">
+ <term>
+ <parameter>sendmail_from</parameter>
+ <type>string</type>
+ </term>
+ <listitem>
+ <para>
+ Windows環境でPHPから送信されるメールにおいて "From:"
+に使用する
+ メールアドレスを指定します。
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry id="ini.sendmail-path">
+ <term>
+ <parameter>sendmail_path</parameter>
+ <type>string</type>
+ </term>
+ <listitem>
+ <para>
+ <command>sendmail</command> プログラムを探すパスを指定します。
+ 通常、<filename>/usr/sbin/sendmail</filename> または
+ <filename>/usr/lib/sendmail</filename>です。
+ <command>configure</command>
+は、このパスを探し、デフォルト値と
+
+して設定しますが、これで上手くいかない場合にはこのオプションで
+ 設定する必要があります。
+ </para>
+ <para>
+
+sendmailを使用していないシステムは、必要に応じてこのディレクティ
+
+ブに使用するメールシステムが提供するsendmailのラッパー/代替品を
+ 設定する必要があります。例えば、<ulink
+ url="&url.qmail;">Qmail</ulink>ユーザは、通常、
+ <filename>/var/qmail/bin/sendmail</filename>に設定します。
+ </para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
</partintro>
<refentry id="function.mail">
@@ -42,8 +97,7 @@
情報については、
<ulink url="http://www.zend.com/zend/spotlight/sendmimeemailpart1.php"
>http://www.zend.com/zend/spotlight/sendmimeemailpart1.php</ulink>
- または RFC 1896 (<ulink url="http://www.rfc-editor.org/">
- http://www.rfc-editor.org/</ulink>を参照)を参照下さい。
+ または <ulink url="&url.rfc1896;">RFC 1896</ulink>を参照下さい。
</simpara>
<para>
<function>mail</function> は、メール送信に成功した場合に &true;
、
@@ -53,7 +107,7 @@
<example>
<title>メールを送信する</title>
<programlisting role="php">
-mail ("[EMAIL PROTECTED]", "My Subject", "Line 1\nLine 2\nLine 3");
+mail("[EMAIL PROTECTED]", "My Subject", "Line 1\nLine 2\nLine 3");
</programlisting>
</example>
</para>
@@ -64,95 +118,103 @@
</simpara>
<note>
<para>
-
Win32システムでは、ヘッダを分割するために<literal>\r\n</literal>
- を使用する必要があります。Win32システムでは、cc: および
bcc: ヘッ
- ダは大文字小文字を区別し、<literal>Cc:</literal>および
- <literal>Bcc:</literal>と書く必要があることに注意して下さい。
+
+複数のヘッダを区切る場合、<literal>\r\n</literal>を使用する必要
+ があります。ただし、いくつかのUnix MTA(Mail transfer
+agents)では
+ 改行文字(<literal>\n</literal>)だけでも動作します。
+ Win32システムでは、Cc: ヘッダは大文字小文字を区別し、
+ <literal>Cc:</literal>と書く必要があります。Bcc:ヘッダはWin32シ
+ ステムではサポートされていません。
</para>
</note>
- <simpara>
-
5番目のパラメータを指定した場合、PHPはこのデータをメーラをコール
- 際に追加します。この機能は、sendmailを使用する際に正しい
- Return-Pathヘッダを設定したい場合に便利です。
- </simpara>
<para>
<example>
- <title>追加ヘッダを指定してメールを送信</title>
+ <title>追加ヘッダを付加してメールを送信する</title>
<programlisting role="php">
-mail("[EMAIL PROTECTED]", "the subject", $message,
- "From: webmaster@$SERVER_NAME\nReply-To: webmaster@$SERVER_NAME\nX-Mailer: PHP/"
. phpversion());
+mail("[EMAIL PROTECTED]", "the subject", $message,
+ "From: webmaster@$SERVER_NAME\r\n"
+ ."Reply-To: webmaster@$SERVER_NAME\r\n"
+ ."X-Mailer: PHP/" . phpversion());
</programlisting>
</example>
-
5番目のパラメータを指定するとこれが使用するメーラのコマンドライン
- パラメータに追加されます。以下の例では、sendmailに正しい
-
Return-Pathを設定しています。通常、sendmailは-fパラメータを使用し
-
た場合にX-Authentication-Warningヘッダを追加します。これは、通常、
-
Webサーバのユーザが認証済のユーザのメンバではないことが多いからで
-
す。この警告をなくすには、Webサーバのユーザを使用するsendmailの設
- 定ファイルの認証済のユーザ(trusted
users)に追加する必要があります。
</para>
- <note>
- <para>
- この5番目のパラメータは、PHP 4.0.5で追加されました。
- </para>
- </note>
<para>
+ パラメータ<parameter>additional_parameters</parameter>は、追加の
+
+パラメータをメール送信プログラムに渡す際に使用可能です。
+ メール送信プログラムは、設定オプション
+ <literal>sendmail_path</literal>により設定されます。例えば、
+
+sendmailを使用する際にエンベロープのsenderアドレスを設定する際に
+
+使用することが可能です。この方法でエンベロープのsenderヘッダを設
+
+定する際、'X-Warning'ヘッダが付加されないようにWebサーバを実行し
+
+ているユーザをsendmail設定に追加しておく必要があるかもしれません。
<example>
<title>
-
ヘッダおよびコマンドラインパラメータを追加してメールを送信
+
+追加ヘッダ及び追加コマンドラインパラメータを指定してメールを送信
</title>
<programlisting role="php">
-mail("[EMAIL PROTECTED]", "the subject", $message,
- "From: webmaster@$SERVER_NAME", "-fwebmaster@$SERVERNAME");
+mail("[EMAIL PROTECTED]", "the subject", $message,
+ "From: webmaster@$SERVER_NAME", "-fwebmaster@$SERVER_NAME");
</programlisting>
</example>
-
複雑なemailメッセージを作成する際に単純な文字列結合を使用すること
+ </para>
+ <note>
+ <para>
+ この5番目のパラメータは、PHP 4.0.5で追加されました。
+ </para>
+ </note>
+ <para>
+
+複雑なemailメッセージを作成する際に簡単な文字列結合を使用すること
も可能です。
<example>
<title>複雑なemailを送信する</title>
<programlisting role="php">
-/* recipients */
-$recipient .= "Mary <[EMAIL PROTECTED]>" . ", " ; //コンマで区切る
-$recipient .= "Kelly <[EMAIL PROTECTED]> . ", ";
-$recipient .= "[EMAIL PROTECTED]";
+/* 送信先 */
+$to = "Mary <[EMAIL PROTECTED]>" . ", " ; // カンマで区切る
+$to .= "Kelly <[EMAIL PROTECTED]>";
/* 題名 */
$subject = "Birthday Reminders for August";
/* メッセージ */
-$message .= "The following email includes a formatted ASCII table\n";
-$message .= "Day \t\tMonth \t\tYear\n";
-$message .= "3rd \t\tAug \t\t1970\n";
-$message .= "17rd\t\tAug \t\t1973\n";
-
-/* 保存されたsigunatureを追加できます */
-$message .= "--\r\n"; // signatureの区切り
-$message .= "Birthday reminder copylefted by public domain";
-
-/* エラー用、From、cc、bcc、等の追加ヘッダ */
-
-$headers .= "From: Birthday Reminder <[EMAIL PROTECTED]>\n";
-$headers .= "X-Sender: <[EMAIL PROTECTED]>\n";
-$headers .= "X-Mailer: PHP\n"; // メイラー
-$headers .= "X-Priority: 1\n"; // 緊急メッセージ!
-$headers .= "Return-Path: <[EMAIL PROTECTED]>\n"; // エラー時の返信先
+$message = '
+<html>
+<head>
+ <title>Birthday Reminders for August</title>
+</head>
+<body>
+<p>Here are the birthdays upcoming in August!</p>
+<table>
+ <tr>
+
+<th>Person</th><th>Day</th><th>Month</th><th>Year</th>
+ </tr>
+ <tr>
+
+<td>Joe</td><td>3rd</td><td>August</td><td>1970</td>
+
+<td>Sally</td><td>17th</td><td>August</td><td>1973</td>
+ </tr>
+</table>
+</body>
+</html>
+';
+
+/* HTMLメールを送信する場合、Content-typeヘッダを指定可能です。
+*/
+$headers = "MIME-Version: 1.0\r\n";
+$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
-/*
HTMLメールを送信したい場合、次の行のコメントを外して下さい
*/
-// $headers .= "Content-Type: text/html; charset=iso-8859-1\n" // MIME型
+/* 追加ヘッダ */
+$headers .= "From: Birthday Reminder <[EMAIL PROTECTED]>\r\n";
-$headers .= "cc:[EMAIL PROTECTED]\n"; // CCの宛先
-$headers .= "bcc:[EMAIL PROTECTED], [EMAIL PROTECTED]"; // BCCの宛先
+$headers .= "Cc: [EMAIL PROTECTED]\r\n";
+$headers .= "Bcc: [EMAIL PROTECTED]\r\n";
/* ここでメールを送信する */
-mail($recipient, $subject, $message, $headers);
+mail($to, $subject, $message, $headers);
</programlisting>
</example>
</para>
<note>
<para>
-
追加したパラメータあるいはsubjectパラメータの後に改行(または他の
-
空白文字)を付加しないようにして下さい。この場合、おかしな結果に
- なってしまう可能性があります。
+ <parameter>to</parameter>または<parameter>subject</parameter>に
+
+改行文字を含まないようにして下さい。さもないと、正常に動作しない
+ 可能性があります。
</para>
</note>
</refsect1>
@@ -179,13 +241,10 @@
<example>
<title>ハッシュ値を計算し、ユーザを登録する</title>
<programlisting role="php">
-$user = "[EMAIL PROTECTED]";
+$user = "[EMAIL PROTECTED]";
$hash = ezmlm_hash ($user);
-$query = sprintf ("INSERT INTO sample VALUES (%s,'%s')",
- $hash,
- $user
- );
-$db->query ($query); // PHPLIB dbインターフェースを使用します
+$query = sprintf ("INSERT INTO sample VALUES (%s, '%s')", $hash, $user);
+$db->query($query); // PHPLIB dbインターフェースを使用します
</programlisting>
</example>
</para>