PHP4/PHP5のテンプレートエンジンとして、またプログラムと表示を切り分けるフレームワークとして簡単に利用できるライトウェイトなWebアプリケーションフレームワークです。
spiderでできること
日本発ならではのライトウェイトコンテナ
設定ファイル不要なdefineless仕様で、MVCモデルに基づくプログラムとデザイン部分の切り分け及び、テンプレート機能、ウィジェット機能とブラウザごとの振り分け表示機能を有し、モバイルとPCサイトの両立をしやすくした日本発ならではのフレームワークです。
多くの機能は保持していませんが汎用モジュールの開発によりどんなことでも実現できます。
デザイナーやHTMLコーダー
プログラムに自信がないユーザーでも簡単に使えるテンプレートタグを提供。ほんの少しの学習でプログラムを導入した動的なページを作成できます。
また強力なテンプレート機能や動的ウィジェット機能によりコーディングの手間を大きく軽減。HTMLの再利用性を高めることができます。
より複雑な処理が可能
必要であればテンプレート内でもPHPプログラムを自由に記述することができるので、少しのルールを覚えるだけでページ内でどんなプログラムでも記述することができます。
モジュールの再利用性に重点を置いているので、正しく設計すれば無駄なコーディングの手間も軽減できます。
framework-spiderで作成したソフトウェア
mailformer - メールフォーマー -
サーバーにアップしてブラウザアクセスの管理画面からいくつでもメールフォームを作ることができる無料のメールフォームPHPスクリプト。
デザインテンプレート機能でテンプレートの作成や配布も行えます。
shopformer - ショップフォーマー -
既存サイトの一部にアップロードしてライトに使える無料のショッピングカートPHP。MySQL4.1以上で動作します。mailformerと同じデザインテンプレート機能を搭載。テンプレートのカスタマイズやインストールも簡単。
framework-spiderで構築したサービス
b3から下記の点を整備して正式リリースとします。
1)セッションコントロール機能の追加
spider_HttpRequestオブジェクトにsetSessionメソッドとgetSessionメソッドを追加しました。アクセスURIのフォルダ単位でセッション変数の自動制御を行います。
2)コアエラーメッセージをmessage.inc.phpファイルに定義するよう変更しました。
言語を変更することを視野に入れた対応です。
3)ログ出力周りを整備しました。
spider_ModuleBaseに入れていたログ出力機能を見直し、spider_HttpRequestクラスへログ出力機能を移動しました。
-- 2009-04-17
1) ログ出力周りの整理を行いました。ModuleBaseにあったログ出力機能をHttpRequestに移しました。
2) ログ出力レベルの定義を追加・変更しました。
併せてsyslogdへのログ出力にも対応しました。定数SYSTEM_LOG_TYPEを定義してSPIDER_LOG_TYPE_SYSLOGを設定すれば
システムログへのログ送出へ切り替わります。unique_setting.inc.php内もしくは他ファイルを読み込ませて定義してください。
本バージョンではsyslogdへのident文字列はspiderで固定です。
-- 2009-04-16
1) 公開フォルダ直下に配置した.defaultファイルが有効にならない問題の修正
lib/spider/Builder.class.phpを修正しました。
-- 2009-04-15
1) コアのエラーメッセージをDATA/messages.inc.phpにハッシュで定義しました。
-- 2009-04-14
1) spider_HttpRequestクラスにセッション制御メソッドを追加しました
リクエストURIの階層ごとにセッションの有効無効を自動で制御できます。
フォルダ階層を抜けた場合はセッションを無効化します。
これによりモジュールで利用するセッション記憶域の無制限な増大を避けることができます。
-- 2009-04-13
1) setタグでハッシュ、メンバの値がクォートされていた場合に正しく判別できていなかった問題を修正しました。
lib/spider/tags/SetAttribute.class.php
-- 2009-04-10
1) 本体とはあまり関係ありませんがphp5でフォーム名からハッシュを入力できていない問題があるため
lib/util/Mail.class.php
lib/util/mail/PHP.class.php
lib/util/mail/Sendmail.class.php
lib/util/mail/SMTP.class.php
を変更しました。
2) 本体とはあまり関係ありませんが
lib/spider/module/AutoEncode.class.phpで配列入力をエンコード出来ていなかった問題を修正しました。
lib/spider/module/AutoFormat.class.phpを追加しました。
3) ModuleBase.class.phpのログ出力をdefineで定義して整えました。
-- 2009-04-07
1) ModuleBaseクラスの名称をspider_ModuleBaseクラスに変更しました。
-- 2009-04-06
1) spider.inc.phpでユーザー公開ディレクトリに設置した場合にドキュメントルートの判別を
ホストのドキュメントルートにしていた為設置URIを正しく認識できなかった問題の修正