2006年12月24日

php : 文字エンコーディング関連

イブ前夜に何やってんだか。って、あ、もう12時回ったかw
ま、所帯持ちにゃかんけーねーや。w
あー。なんかいーことしてぇー(爆)


最近、自分の文字エンコードに関する知識の浅さに打ちのめされて、再度勉強中なんですが・・・。はぁ。思ったとおり、めんどーですね。

スクリプトからできるだけ制御しようと思っているんですが、結構考慮すべき関数や設定値が多い。ということで、文字エンコードに関して考慮すべきことや覚え書き。

環境
windows xp sp2
apache 2.0.53
php4 version 4.4.2

続きを読む
posted by HiFa at 02:07 | 🌁 | Comment(0) | TrackBack(0) | JavaScript雑感 | このブログの読者になる | 更新情報をチェックする

2006年12月18日

PHP : オブジェクトメソッドを指定する可変関数について

オブジェクトメソッドを指定する可変関数について、前回流した分の補足です。
前回はこちら

例えば、$obj->ex = 'sleep'; として $obj->ex(); としても sleep は使えないですよね。ま、当然の話しで、オブジェクトメソッドを指定しているのに、オブジェクトにそのメソッドが無い。
※ $obj に sleep というメソッドがあれば call 出来ます。

実際に書いてみたのが以下のコード。書くまでも無くエラーになりますw

続きを読む
posted by HiFa at 17:10 | 🌁 | Comment(0) | TrackBack(0) | ときどきPHP | このブログの読者になる | 更新情報をチェックする

PHP4コアでメソッドの動的な追加

PHP4 コアのみで、PECLの runkit 関数を使わずにメソッドの動的な追加(っぽい事)をやってみます。

登録した関数をオブジェクト内部から呼び出す事と、メソッドの動的な生成です。

同日修正:コード修正しました。
すみません。ポカミスってました。呼び出される関数で $this に受け取っていたので、$slf へ受け取ります。

■ 2009/04/24追記
php:インスタンスのクラスを変えてしまう
こういうやり方でも擬似的に追加や変更が出来る

続きを読む
posted by HiFa at 03:55 | 🌁 | Comment(0) | TrackBack(0) | ときどきPHP | このブログの読者になる | 更新情報をチェックする

2006年12月15日

PHP のマニュアル

最近、久々に PHP 使ってるんですが、PHP のマニュアルってホント親切で分かりやすい

文字セットについて再確認しようとざーっと読んだんですが、かの Javascript 仕様書との違いに涙が出そうになるw  いやぁ。ビバ! PHPユーザ会!

ん!?javascript 仕様書面倒じゃない?
そんな意見は無視で。私的に相性が合わないんすよ。なんでかなー。

それでもスクリプト自体は Javascript の方が面白い!これ断然!

あのいい加減さじゃなくってw   柔軟性がたまらん。prototypeってのもいい(ちゃんと理解してるか怪しいもんだが・・・)関数ですら単なる値!としていじくり倒せるのが楽しい。
でも、クロスでめちゃめちゃな所はちょっとキライw

ま、このカチっとしてない得体の知れない感じが、嫌いな人も多いんだろーなぁ。

結局、ドキュメントオブジェクトとの関連やコードの軽量化のためにあーなってるんだろうと推測しているんですけどね。
そんなのは、どーでもいい事です。楽しけりゃw

なんて言ってても、カチっとした所にくると、それはそれでホッとするのもまた事実。いやぁ。結局はどっちも楽しいんだろーなw。
posted by HiFa at 13:30 | 🌁 | Comment(0) | TrackBack(0) | よもやま | このブログの読者になる | 更新情報をチェックする

2006年12月12日

php : mbstring.encoding_translation って痛いかも?

mbstring.encoding_translation って意外と曲者

例えば php.ini で。
mbstring.internal_encoding = EUC-JP
mbstring.encoding_translation = On


なんて感じになっていると、php コードの頭に
mb_internal_encoding("UTF-8");

と指定しても POST されたデータなんかは UTF-8 にならない。
当たり前だけど、時すでに遅し。プロセスがデータ受け取る時にはすでに EUC にエンコードされちゃってる。

EUC でしかドキュメント作らねーなんて今までが平穏&ラッキー過ぎた。こんなしょーもないことでえらい事悩んでしまった・・・。

デフォじゃ off だけど、有効にしてるレンサバって多いのかなぁ。
ini_get で、mbstring.encoding_translation 見て動作変えるのって、結構重要かも。

ひっさびさの php だ。
何ヶ月ぶりだろ。このブログじゃ初だわw

今までなんとなーく EUC を使ってたんだけど、やっぱ UTF-8 っしょってな具合で重い腰を上げたんですけどね。(重すぎかぁ!?)
やっぱ場当たり的な対応で逃げてるとダメですね。文字にゃ苦労してる割に身になってない・・・。
posted by HiFa at 23:34 | 🌁 | Comment(0) | TrackBack(0) | ときどきPHP | このブログの読者になる | 更新情報をチェックする
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。