Last Update: "2007/11/27 11:59:38 makoto"

php4

最近は php4 の開発が終了したので php5 に移行することを考慮した方がいい。 その場合には pkgsrc/lang/php5 で make する。しかしもし何かの適応業務(application) が php4 でのみ動く、 という場合には php4 強制にしたい。そのような場合には、例えば /etc/mk.conf に次のように書いておく。特に二行目が重要。
PHP_VERSION_DEFAULT=    4
PHP_VERSION_REQD=	4

mb_string

日本語を使うには mb_string を生かしておく。 具体的には、misc/php-mbstring で make package する。次のような方法 もあるかも知れない(未確認、多分間違い、ごめんなさい)。
PKG_DEFAULT_OPTIONS+=   mbstring
(以下は古い話: obsolete)
php4 i18n 無 に書いてあるが、pkgsrc/www/php4/Makefile.php に次の一行を加えておく。
CONFIGURE_ARGS+=       --enable-i18n --enable-mbstring --enable-mbstr-enc-trans
そうして、
ww/php4 と www/ap-php
make clean && make && make install
とする。
Wordpress
Wordpress で日本語を使う場合には、mbstring の機能がじゃまになることも ある。要するに、不可解な文字化けというような現象になる。 特に WordPress 側で UTF-8 に設定していて、Web 側は EUC-JP を使っている というような場合が考えられる。 そいう時には、.htaccess に
php_value output_handler no
のようにしておく。

php.ini

http://www.ki.nu/software/NetBSD/postgresql/php4-i18n.html.ja より: /usr/pkg/etc/php.ini に次のような設定をしておく
[mbstring]
mbstring.internal_encoding = EUC-JP 
mbstring.http_input = auto 
mbstring.http_output = EUC-JP
mbstring.detect_order = auto 
mbstring.substitute_character = none;