Windows への Ethna-0.2.0 インストール

PHP 勉強会でいろいろと聞かされたし、藤本さんともお話したので、PHP の和製フレームワーク Ethna を見てみようと手元のマシンに入れてみる。

環境: Windows XP Professional SP2, PHP5.1.1, PEAR1.4.6

PEAR のアップデート(念のため)

  • cd C:php-5.1.1 (このパスは一例。自分が入れた場合の場所)
  • pear update PEAR

Ethna のダウンロードとインストール

  • Ethna のダウンロードページから、
  • Sourceforge.jp の配布ページ
  • Ethna-0.2.0.tar.gz を選択、ダウンロード
  • コマンドプロンプトを開き、ダウンロードしたファイルの場所へ
  • pear install Ethna-0.2.0.tar.gz
  • PEAR と同じ場所に Ethna というディレクトリができる
  • PEAR に PATH が通っていれば使える。なければパスを通す

関連ライブラリのダウンロードとインストール

  • pear install DB
  • pear channel-discover pearified.com
  • pear install pearified/Smarty

pear コマンドでインストールできる Smarty についてはこちらを参照。Smarty への include_path 指定さえ確かなら、Smarty サイトから持ってきて自分で展開しても同じ。

UTF-8 化

Ethna のソースは EUC-JP。新規に何かやるなら UTF-8 かな、ということでコード変換を。Windows 上で cygwin も入れてないし、一括コード変換ツールを探した。これ KanjiTranslater 。(フリーで使わせてもらってなんだが、translater じゃなくて translator のような気がする)

  • ダウンロードした KanjiTranslater の zip を展開
  • KanjiTranslater.exe を実行
  • 変換先文字コードを UTF-8 に。改行はお好みで
  • C:php-5.1.1PEAREthna フォルダをドラッグアンドドロップ
  • 「変換」を実行

あと、Ethna のコード中で EUC-JP と指定されているところを、UTF-8 に変更。0.2.0 では以下のファイルだった。

  • skeltemplate.index.tpl
  • tplinfo.tpl

classEthna_SmartyPlugin.php は、ワードウラップ処理で、EUC-JP 専用らしいので単純に UTF-8 にしても無意味。UTF-8 用の wordwrap 処理が必要だな。

とりあえず間違って使われないように exit で止まるよう仕込む。関数の最初に、

exit ('smarty_modifier_wordwrap_i18n does not support UTF-8 yet');