2012-04-27 4 views
-2

PHP에서 데이터 바인딩을위한 프레임 워크가 있습니까? 존재하는 경우 코드 점화기와 통합 된 것이 더 좋습니다.데이터 바인딩을위한 프레임 워크 - PHP

편집

나는 데이터베이스 ORM 찾는 게 아니에요. 컨트롤러에서 Grails처럼 동적 생성 객체에 요청 (가져 오기 또는 게시)을 바인딩합니다.

편집 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()이 속성이 채워진 객체를 반환합니다. 예를 들어, 내 컨트롤러 : 경우 내가 그 ReflectionClass와 함께 할 수있는이 쉽게 될 것입니다 알고있는 간단한 클래스이지만,

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

경우 이미 객체 나 배열을 처리하는 것을 존재하는 경우 내가 찾고 있어요 관계가있는 클래스 (예 : 클래스 C에는 클래스 A와 클래스 B에 대한 속성이 있습니다).

예 :

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

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

은 어떻게 든 나는 HTML에 HandleMultipleA을 표현해야합니다

<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/

당신을 위해 나를 google하자 : http://codeigniter.com/wiki/Using_Doctrine_with_Code_Igniter/

그리고 여기 비디오는 integrating MongoDb + Doctrine with CakePHP에 관한 이야기입니다.

편집 :

CakePHP 2.x를 살펴보십시오. 어쩌면 당신은 CakeRequest와 CakeResponse 클래스를 복사하고 적용 할 수 있습니다. 당신이 찾고있는 것을 정확하게 (당신이 더 자세하게 정의한 후에) 할 수 있습니다. 하지만이 경우에는 왜 코드 점화 장치를 사용해야합니까?

+0

Doctrine은 데이터베이스 지속성 라이트를위한 것입니까? 어쩌면 내가 내 질문에 분명 아니지만 바인딩 요청 매개 변수 (게시 및 가져 오기) 개체에 대해 얘기하고 있어요. –

+0

그리고 귀하의 정보에 대한이 질문을 게시하기 전에 내가 봤어. –

+0

데이터 바인딩은 거의 모든 것을 의미 할 수 있습니다. – burzum