PHP/FI FAQ(日本語訳)

1. なぜ、while ループにおいてパーサのエラーが 発生し続けるのですか?
パーサは、非 UNIX の改行コードに少々敏感です。 恐らく、あなたは、ファイルを非UNIX環境で作成しファイルを変換せずに アップロードしたと考えられます。 ほとんどの ftp プログラムは、転送時にASCII ファイルを変換するオプションを 有しています。 もしくは、ほとんどの UNIX システムは、dos2unix コマンドを 持っていると思われますので、これを用いてファイルを変換することが可能です。 もし、どちらも動作しない場合は、UNIX プロンプトで次のように タイプしてみて下さい。:
tr -d '\r' newfile

2. どうやって、CR や LF を reg_replace 関数を用いて 置換するのですか?
全ての文字は、その ASCII コードを用いて置換できます。 キャレッジリターン(CR)は、ASCII コード 13 ですから、 次のような技を用います。:
$string = reg_replace(13,"<br>",$string);
これは、全てのキャレッジリターンを HTML の改行タグに変換して返します。

3. どのようにして GD 画像ライブラリをインストールプログラムに認識させますか?
インストールプログラムは、ライブラリやインクルードファイルのある 他のディレクトリを尋ねます。 ライブラリについて質問された時は、libgd.a ファイルをインストールした ディレクトリを指定し、他のディレクトリについて質問された時は、 gd*.h のあるディレクトリを指定することに注意して下さい。

4. mSQL によるログ機能を使用しているが、 私のカウンタは、0 のままです。なぜですか?
特定のHTMLファイルを所有するユーザーに関するログを記録するため のテーブルが作成されていないのです。 PHP/FI 配布ファイル中の scripts ディレクトリにある msqllog スクリプトを 実行して下さい。 msqllog username は、自分(username)用にこれを行います。

5. どうやれば、ページ下部のフッタ情報をオフに できますか?
単にあるページについてフッタをオフにしたい場合には、各ページに 次のタグを加えます。: <setshowinfo(0)> もしくは、?config 画面から "No Info" ルールを作成できます。 Apache モジュール版を使用している場合、次のような行を srm.conf ファイルまたは直接 .htaccess ファイルに 加えることができます。:
phpShowInfo off

6.ログ記録と dbm ファイルに関して 全般的に問題を生じています。
正しく dbm ライブラリをコンパイルしたか確認して下さい。 prep.ai.mit.edu にある gdbm を使用することを勧めます。

7. なぜ、php.cgi/httpd バイナリは非常に大きいのですか?
デフォルトでは、デバッグシンボル付きで作成されます。 より管理のしやすい大きさに減らすには、 次のようにタイプして下さい。
strip php.cgi または、strip httpd

8. どうやって、SELECT MULTIPLE form フィールドを 処理しますか?
この問題は、一つのフォーム要素が複数の値を取ることができることです。 これは、配列を使用する必要があることを意味します。 次のようなタグがこの問題の答えです。
<SELECT MULTIPLE name="var[]">
投稿されたフォームを受けた時、$var 配列は、全てのデータを含んでいます。 これを取り出すには、ループを使用して下さい。

9. どうやって、スクリプト中で現在の URL を参照しますか?
$PHP_SELF 変数を使用して下さい。使用可能な変数の完全なリストについては、 ?info 画面を参照して下さい。 (1.99n 以降でのみ使用可能です。)