Windows環境(つかShift-JIS環境)におけるSmartyの問題あんまりやりたくなかったのだが、Windows2003Server上のIIS+PHP5+Smarty環境で開発を行う必要に迫られた。この環境を構築するのは初めてだったが、予想よりかはあっさりと動き開発を始めた・・・のだが、なんかSmartyテンプレートのヘンなトコロで以下のよーなエラーが発生。〜認識されないタグ?でも指定された行は単なるテキストで、Smarty関連のタグは入ってない。ゆー時ってヘンなトコロにヘンな文字コードが入って誤認識を起こしてる事が多いよなーとか思い、入力されてる文字列を1つ1つ確認していったところ、「ボ」でエラーを起こしてることを突き止めた。今までSmarty使ってても「ボ」ってフツーに使ってたよなー。Smartyのタグ記述用デリミタ「{」の文字コード「7B」とカブってる事が原因らしい。今までSmartyってEUC-JPかUTF-8でしか書いたことなかったからなー。Smartyってマルチバイト環境の事あんま考えて無さそうだし、やっぱ慣れない事はするべきじゃないってことですかねえ。mb_convert_encodingで変換する手とかがあるようだが、文字列をPHP側で変数に入れてソレを表示する分には問題ないっぽい。状況にもよるだろうけど文字列は全て変数に叩き込むのも1つの手かも知れない。追記:「本」もダメだった。他にもいくらでもありそう。文字コード全部見る気はしない。文字列全て{literal}で括るのが基本になるでしょか。当然だけど括った中はSmartyのタグも無効化されるので書く位置には注意。■恐らくは他に役に立たないであろう備忘。Linux上のPHPからwinexeを起動して他のWin機のコマンドを実行したい場合。■PHP53においてtimezoneをAsia/Tokyo設定した場合話。総アクセス数:1,071,783。