Menu

リンク

S2Container.PHP Project

% cat quickstart.php
<?php
require_once('S2Container.php');

class Action {
    public $service;
}

class Service {
    public $dao;
}

class Dao {
    private $pdo;
    public function setPdo(PDO $pdo) {
        $this->pdo = $pdo;
    }
}

s2component('PDO')->construct(function(){
    return new PDO('sqlite::memory:');
});

var_dump(s2get('Action'));

%
%
% php quickstart.php
object(Action)#36 (1) {
  ["service"]=>
  object(Service)#51 (1) {
    ["dao"]=>
    object(Dao)#67 (1) {
      ["pdo":"Dao":private]=>     
      object(PDO)#72 (0) {
      }
    }
  }
}
%

Caution

  • s2container-2.0はs2container-1.0と互換がありません。このため、S2Dao.PHPなどの他のSeasar.PHPプロダクトと共にs2container-2.0を使用することはできません。
  • s2container-1.0からの機能の追加、削除、変更点はこちらを参照下さい。
  • s2container-1.0はこちらからご利用下さい。

Download


Document


Environment

 PHP-5.3 以降で動作します。以下の環境で開発・動作確認を行っています。

  • CentOS 5.2 : php-5.3.2