dari88's diary

これから趣味にするプログラミング/PHP/javascript/kohana/CMS/web design/

XOOPS(XCL)の勉強を始めました・・・先ずは環境を整える

PHPのお勉強はそろそろいいかということで、XOOPS Cube Legacy(XCL)の勉強を始めています。XOOPS は古いという話もあり、いろいろと CMS について調べてみました。今から勉強するなら CodeIgniter なんかもいいかなと思ったのですが、ライセンス問題で炎上しているみたいだし、近いところで Kohana なんかネーミングがいいなと思うとマニュアルが全然無かったりして。結局「XOOPS Cube Legacy デベロッパーズ・バイブル」を買ったことだし、これを勉強することにしました。

で、この本を読み始めると何のことやらさっぱり分かりません。PHP の勉強を始めた時は英語を勉強した後でフランス語を勉強するようなものだと感じていましたが、こいつはいきなり銀河系のとある星の言語の文法を読んでいるような感覚です。

さて今日は勉強しながら環境を整えたので、そのメモです。

<環境を整える>
3月25日の日記27日の日記にあるように XCL は導入済みです。
・本に付いている CDROM のサンプルコードは文字エンコードEUC-JP なので、一括で UTF-8 に変更しました。この処理には Vector から 文字コード判定&変換ツール.NET というソフトをゲットして利用しました。対象拡張子には php,html,sql を指定します。
・XCL の構成ファイルには SJIS のものも含まれていたりするので、htdocs/xoops/下と、xampp/xoops_trust_path/下なんかも同様に処理しちゃいました。XCL の動作に何らかの影響が出るのかは不明です。
・htdocs/xoopsNetBeans のプロジェクトとして登録します。
・このプロジェクトのインクルードパスを右クリックしてプロパティを開きます。[フォルダを追加]をクリックして、xampp/xoops_trust_path を登録します。
NetBeansデバッグモードを有効にするために、php.ini の下記部分を変更しました。

zend_extension = "C:\xampp\php\ext\php_xdebug.dll"
xdebug.remote_enable = on
xdebug.remote_handler = "dbgp"
xdebug.remote_host = "localhost"
xdebug.remote_port = 9000

 これで XCL を勉強する環境が整いました。NetBeans を使うと、呼び出している関数やクラスを検索して定義しているファイルにジャンプして調べるみたいな事が簡単に出来ちゃいます。CMS の複雑な処理を追っていこうと思ったら、NetBeans みたいな統合開発環境が必須だと思います。

つでにメモしておきますが、php.ini をいじっていくとそのうちにどこをどういじったのか分からなくなります。元の php.ini を保存してあればですけど、差分検出プログラムがあれば変更部分を簡単にチェックできます。調査の結果 WinMerge というフリーソフトを採用しました。これは完成度の高いソフトだと思います。