2012-04-27 41 views
-2

在那裏有一些PHP的數據綁定框架?如果存在與Code Igniter集成的更好的東西。數據綁定框架 - PHP

編輯

我不是在尋找一個數據庫ORM。它綁定了一個請求(get或post)到動態創建對象,如Grails在他的控制器中做的。

EDIT 2

比方說,我有一個代表博文類:

class BlogPost { 

    private $codePost; 
    private $title; 
    private $cotent; 
    private $datePost; 


    //getters & setters ommited. 
    //methods to validate and persist ommited. 

} 

通常情況下,你要做的就是得到這個職位數據,並創建博客帖子對象:

$post = new BlogPost(); 
$post->setTitle($_POST['title']); 
//... other sets 

在Grails中(請參閱鏈接),bindData()返回一個對象,其中填充了屬性。例如,在我的控制器:

bindData($post, $_POST); //this returns a $post variable with the content of the post 

如果案件是一個簡單的類我知道,可以用ReflectionClass來完成,這將是很容易,但我正在尋找是否存在一些已經處理的對象或數組有關係的類(例如C類具有A類和B類的屬性)。

例子:

class A { 
    private $atribOne; 
    private $atribTwo; 
} 

class HandleMultipleA { 
    private $listOfA; //array of class A 
    private $moreSomethingThatINeedToControl; 
} 

不知怎的,我要代表HandleMultipleA在HTML:

<input type='text' name='moreSomethingThatINeedToControl' /> 
<input type='text' name='listOfA[0].atribOne' /> 
<input type='text' name='listOfA[1].atribOne' /> 
<input type='text' name='listOfA[2].atribOne' /> 

而且finnaly在我的控制器我想要做的事,如:

bindData($handleMultipleA, $_POST); 

foreach($handleMultipleA.getListOfA() as $aInstance) { 
    //more stuff... 
} 

回答

0

http://www.doctrine-project.org/

讓我爲你谷歌:http://codeigniter.com/wiki/Using_Doctrine_with_Code_Igniter/

這裏是一個關於integrating MongoDb + Doctrine with CakePHP視頻談話。

編輯:

看看CakePHP 2.x.也許你可以複製和修改CakeRequest和CakeResponse類,它們完全按照你要找的內容(在你更詳細地定義它之後)。但在這種情況下,爲什麼要使用代碼點火器呢?

+0

學說是爲數據庫持久賴特?也許我不清楚我的問題,但我正在討論綁定請求參數(post和get)到對象。 – 2012-04-27 01:07:43

+0

爲了您的信息,我在發佈此問題之前進行了搜索。 – 2012-04-27 01:36:34

+0

數據綁定可能意味着幾乎所有... – burzum 2012-04-27 19:10:20