PHP에서 폼을 빌드하는 이미 완료된 라이브러리를 사용하고 싶지 않습니다. 디자인 패턴을 사용하여 직접 작성하고 싶습니다. 디자인 패턴을 새로 추가했기 때문에 어떤 디자인 패턴이 PHP에서 동적으로 건물 양식에 적합한 지 알아야합니다. 동적으로 양식을 작성하는 데 사용할 디자인 패턴. PHP
class FormBuilder {
private $formName;
private $formAttributes; //array('ID' => ?, 'Classes' => array(?,?) ...
private $formStyle; //Css styling of form
private Label $labels; //a collection of label objects holding bunch labels
private Input $inputs; //a collection of input objects holding bunch inputs
/* constructor to initialize everything */
/* GET/SET methods for each of the above private variables */
....
public function generateHTML() {
//takes above information and builds HTML and returns html
}
}
지금 내 문제는 내가 각 레이블에 대한 대상 및 각 입력에 대한 객체를 가질 필요가 있다는 것입니다 : 예를 들어
지금까지 내가 뭔가를 얻었다. Howerver 또는 다른 양식 요소에 대한 객체가 필요할 수 있습니다. 각각에 대해 클래스를 갖는 대신이 방법을 사용하는 가장 좋은 방법은 팩토리 패턴을 사용하는 것입니다.
사람이 라벨/입력에 사용할 FormBuilder와 패턴 디자인 패턴을 제안 할 수 또는 레이블 또는 입력 또는 텍스트 영역 등으로 식별하는 하나 개의 클래스 ...
왜 라벨과 입력에 다른 클래스를 사용하겠습니까? 입력 객체에 "label"속성을 설정하기 만하면됩니다. 컨트롤 및 관련 레이블을 렌더링 할 때 해당 속성을 사용하기 만하면됩니다. –
입력, 레이블, TextArea 및 기타 양식 요소 클래스를 하나에 결합하여 묶기 클래스가 필요 없다. 어떤 패턴을 사용해야할지 모르겠다. – GGio
질문에 '빌드 양식'을 언급 했으므로. 가장 좋은 디자인 패턴은 빌더 패턴입니다. http://sourcemaking.com/design_patterns/builder/php/1#code – Bart