404 motivation not found | t_ishidaのブログ

10月/09

30

最近は、ブログも書かずに何をしているかというと

近況

  • 飲んだくれてます
  • 仕事は割りと忙しかったりします
  • フレームワーク(笑) ver0.2という構想を細々形にしています

フレームワーク(笑) ver0.2

経緯

フレームワーク(笑) ver0.1系でウザかったところの修正がメイン。

まず、viewでヘルパを呼びつつ値を埋め込もうととすると、

<?php echo $this->escapeDeeply( $this->value1 ) );?>

とかって$thisを二回も三回も書かなきゃいけなくなるんだよね。これがウザイ。これはviewに限った話ではなくてactionのvalidateする時とかもそう。

if( $this->isMailAddress( $this->mail_address ) ){
   print 'hogehoge';
}

それから実は、ini_setでincludeパスをやたらめったらに通したりとか、require_once を一杯書いたりとかしなきゃならなかったり、モジュールの独立性(つまりクラスファイルをコピッてくれば、そのまま使えるような)を意識して作っていた事に起因する設定値の受け渡しとかが結構厄介になったりとかしていたところ。この辺をまとめてどうにかする事にしようとしているところですね。きわめて一部だけどver0.2で書くコードはこんな感じになります。これは基幹となるfwwObjectというクラスの自動テストの一部です。

FWW::start();
FWW::import( 'org.fww.core.*' );
FWW::import( 'org.fww.test.fwwTest' );
$obj = FWW::toObject(
  array(
    'html' => '<fuga>',
    'date' => '2009-09-09 20:20:00',
    'url'  => 'http://ishida-tak.sakura.ne.jp/wordpress' ,
    'ten'  => '0123456789',
    ) );
$t = new fwwTest( 'fwwObjectTest' );
$t->start();
$t->ok( $obj->html == '<fuga>' );
$t->ok( $obj->html( 'esc' ) == '&lt;fuga&gt;' );
$t->ok( $obj->url  == 'http://ishida-tak.sakura.ne.jp/wordpress' );
$t->ok( $obj->url( 'isURL' )  );
$t->ng( $obj->date( 'isURL' ) );
$t->ok( $obj->date == '2009-09-09 20:20:00' );
$t->ok( $obj->date( 'fmtD', 'YYYY年' ) == '2009年' );
$t->ok( $obj->ten( 'inStrLen', 10, true ) );
$t->ng( $obj->ten( 'inStrLen', 9, true ) );
$t->ok( $obj->ten( '#^(\d)(\d+$)#' ) );
$t->ok( $obj->ten( '$1' ) == '0'  );
$t->ok( $obj->ten( '$2' ) == '123456789'  );
$t->ng( $obj->date('#^(\d+$)#' ) );
$t->ok( $obj->date( '#^20#', '' ) == '09-09-09 20:20:00');
$t->end();
Share and Enjoy:
  • Digg
  • del.icio.us
  • Google Bookmarks
  • Tumblr
  • email
  • Facebook
  • FriendFeed

RSS Feed

コメントはまだありません。

Leave a comment!

<< SSHの色々

A5:SQL Mk-2 – フリーのSQL開発環境/ER図ツール >>

Find it!

Theme Design by devolux.org

Tag Cloud