「めもらんだむ」XOOPS関連最新記事

デリゲートでBBCodeの拡張を Part2

flagflag

このブログで、PHPのソースを紹介する時、以前は、WordPressのプラグインをつかって、色分けされたソースを表示していました。
しかしながら、同様のことはXOOPSのDelegateを使用しても実現出来ます。少し前の投稿からこのDelegateによって拡張したBBCodeの[phpsrc]タグを使用するように変更しました。 (続き...)


$xoopsOption[’nocommon’]

XOOPS Cube Legacy2.1では、モジュール開発者向けにモジュールの実行モードを2つ追加しました。
従来のXOOPS 2.0.xでは、モジュール開発者がXOOPSの実行環境を読み込む事によるオーバーヘッドを回避するために、


<?php
$xoopsOption
['nocommon']=1;
include 
'../../mainfile.php';
?>

というように書くと、XOOPS_ROOT_PATH等のmainfile.phpに定義された定数だけを読み込むだけで、include/common.phpのinclude実行を行わない様にすることができます。

XOOPS2.0.xでは、この状態でXOOPSが提供しているfunctions.php等を独自に参照することが可能だったのですが、XOOPS Cube Legacy2.1ではfunctions.php内の関数が、XCube_Root等の XOOPS Cubeクラス群を参照するようになったため、定数を読み込んだだけの状態では、functions.phpのincludeに失敗してしまいます。

そこで、XOOPS Cube Legacy2.1 Beta3-d の時点で、$xoopsOption['nocommon']が設定されていても、必要最低限のXOOPS Cubeクラス群の初期化を行うように変更しました。
これによってXOOPS2.0.x用のモジュールで$xoopsOption['nocommon']を指定しているプログラムの大半が稼動可能になったはずです。

しかしながら、$xoopsOption['nocommon']を指定する目的の大半が、特定処理のオーバーヘッド軽減による高速化であったことから、この「必要最低限のXOOPS Cubeクラス群の初期化」でさえも重く感じる場合があるようです。
何人かのメンバーとの討議の結果、新たに2つのPHP定数を用意して、これらのモジュール開発者の要望の期待に答えることにしました。 既存の$xoopsOptionでは無くPHP定数にしたのは、新たなグローバル変数の定義をコアチームとしては避けたかったからです。
(続き...)


XOOPS Headline

Add to Google
「めもらんだむ」その他の最新記事

Eclipse PHP IDE 0.7

Eclipse環境下のPHP IDEが、ZendやIBM支援の下でEclipse Project下で開発途上ですが、10月末に一挙にバージョンが0.7にあがって、stable buildとして、S20061026-M3がリリースされてました。
今までのリリースも何度となくダウンロードしてはテストをしていましたが、デバッグ環境が最近のバージョンではかなりの進歩を見せています。
従来のバージョンでは、ある決まったURLに対してのリクエストに対してのみのデバッグしかできず、単体テストレベルのデバッグしか行えなかったのですが、今回ダウンロードしたバージョンでは、ブラウザーでの対話中もデバッグが有効なままなので、任意箇所にブレークポイントを設定して、通常の対話シーケンスの中でのデバッグかかなり楽にできるようになりました。

簡単に言うと、今までは単純なGETリクエストのページのデバッグしかできなかったのが、POSTリクエストによるデータ更新なども簡単にトレースを取ることができるようになったということです。

WEBサーバと連携してのデバッグには、別途ZendFrameworkをダウンロードしてその中のZendDebugger.soをWEBサーバのPHP Extentionとして登録し、さらにEclipseを稼動させるPCのIPアドレスをphp.ini内にデバッグ許可端末として追加してあげる必要があります。
つまり、php.iniに


zend_extension="/usr/lib/php4/20050606/ZendDebugger.so"
zend_debugger.allow_hosts=192.168.252.254

のような行追加が必要となります。

Eclipse PHP IDE では、minahito氏が絶賛しているVS.PHPに比べると使い勝手は少し落ちますが、VS.PHPと同様にphpdoc形式のコメントを元にしたソース編集時の入力補助機能もありますので、無償ということを考えると、今までのEclipse環境下のTruStudioやphpeclipseに比べても、
かなりお勧めだと思います。

いずれにせよ、このようなデバッグ可能な開発ツールでXOOPS Cubeをステップ実行させると、どのようにしてXOOPS Cubeが動作しているかを目に見える形で理解するための良いツールとなるでしょう。


flagflag

XOOPS初心者サーチ


Add to Google

Xoops Cube Project

XOOPS Cube Project Site

XC Developers Ring

http://img.simpleapi.net/small/http://www.peak.ne.jp/xoops/ SIZE:128x128(7.6KB)

PEAK XOOPSサポート&実験室 by GIJOE