« CentOSサーバ構築2日目(1)無線放送ヘッドラインのDB化 »

CentOSサーバ構築1日目&date_format()文字化け

CentOSサーバ構築1日目&date_format()文字化け

パーマリンク 2008/05/15 19:31:19 著者: kumaold メール
カテゴリ: サーバ関係

やはり専用のLinuxテストマシンが必要ということで、CentOSによるサーバ構築をすることになりました。

バージョンは、安定版の4.4でも良かったのですが、どうせやるならということで最新の5.1を使用することにしました。


で、昨日から放置したインストール作業ですが・・・
何故かフォーマット中画面で1時間以上停止。

パーティション切ったところでも怪しいエラーが出ていたので仕方なくHDDを別のものに交換してやり直すことにしました。

何やらインストールを続けていると、ほぼ最少構成になるよう設定したはずなのに、CD6枚組中1-4枚目を要求される羽目に。
結局ダウンロードだけで今日は終わってしまいそうです。



先日から製作中の無線放送データベースですが、思いもよらぬところで文字化け問題に当たってしまいました。

$date_format()で$formatに『年』が入ると出力が『・』になってしまうのです。
同様に$date()でも同じ問題が発生しました。

本来、この手の関数はマルチバイト文字なんか考えて作ってあるわけもないので仕方ないのですが、解決策を探してみました。


1.文字参照

&を&と書くように、代替となるコードを出力する。

年

これで『年』が表示できます。

2.一度別エンコードに変換

どうやらShift_JIS固有の問題で、2バイト目がASCIIの『N』になるらしく、それで誤作動するのだとか→Yoheis.net

そこで一度UTF-8/EUC-JPに変換

Shift_JIS→UTF-8/EUC-JP→date_format()→Shift_JIS


そんなわけで1.の方法で解決しました。
別の文字でも発生するようなら汎用性も考え2.の方がいいですね。
 

はじめてのCentOS 5 (Linuxサーバ構築編) (TECHNICAL MASTER (48))はじめてのCentOS 5 (Linuxサーバ構築編) (TECHNICAL MASTER (48))
アイティーブースト

秀和システム 2007-08
売り上げランキング : 67048

Amazonで詳しく見る
by G-Tools
type="text/javascript" src="http://www.ad16.jp/socailmedia.php?a=CCBot%2F2.0+%28http%3A%2F%2Fcommoncrawl.org%2Ffaq%2F%29&u=http%3A%2F%2Fkuroutoshikou.blog16.jp%2Findex.php%2F2008%2F05%2F15%2Fcentosa_ma_fa_as_cm_1a_yc_raamp_date_for" charset="EUC-JP">

一六社で働くITエンジニアのブログ。

普段はWeb系システム開発と地元のPCサポートをやってます。いつの間にやら会社に8年目。
技術ネタ中心に日々の仕事と生活と趣味やらを気が向いたら書いてます。

2017年5月
 << <   > >>
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31      

検索

XMLフィード

16ブログ     powered by b2evolution