Zend Framework 의 간단 한 공장 모델 그림
작가 의 그림 을 빌려 클 라 이언 트 가 factory 를 통 해 대상 을 얻 고 Api 구 조 를 통 해 호출 하 는 것 을 볼 수 있다.factory 로 구체 적 인 Api 생 성 을 숨 깁 니 다.다른 모든 사용자 가 사용 할 때 factory 로 만 들 고 Api 구조 호출 을 통 해 간단하게 복습 할 수 있 습 니 다.유 도 를 보면 간단 한 공장 이 떠 오 를 것 이다.왜냐하면 그 자체 가 정말 간단 하기 때문이다.간단 한 공장 복습 을 마치 고 생각 을 조금 뛰 어 넘 고 ZendDb 의 사용.1.복습 ZendDb 의 사용 은 어떻게 사용 해 야 할 지 모 르 면 XXX 의 소스 코드 를 보 려 고 하 는데 XXX 를 어떻게 사용 해 야 할 지 모 르 기 때문에 Zend 를 살짝 살 펴 보 겠 습 니 다.Db 의 사용,아래 부분 은 ZF 공식 문서 에 있 는(개인 적 으로 ZF 문 서 를 좋아 하지 않 습 니 다.Yii 가 읽 기 쉽 지 않 습 니 다)/public/index.phop
$db = Zend_Db::factory('Pdo_Mysql', array(
'host' => '127.0.0.1',
'username' => 'webuser',
'password' => 'xxxxxxxx',
'dbname' => 'test'
));
여 기 는 데이터 베 이 스 를 코드 에 배치 하 는 것 입 니 다.가장 간단 해 보 입 니 다.하지만 포 인 트 를 강조 하기 위해 서 는 이 중 가장 쉬 운 방법 을 선택한다.안에 있 는 젠 드 조심 하 세 요Db::factory(‘Pdo_Mysql'...이 단락 에$db(하나의 ZendDb 대상),위의$db 를 사용 하여 다음 과 같이 조회 합 니 다.Db 는 블랙박스 로 사용 합 니 다.다음은 본론 으로 들 어 갈 수 있다.먼저,zend/db.php 의 코드 요약 을 살 펴 보 세 요.Db:factory 에서$db 를 생 성 하 는 곳:
$db->setFetchMode(Zend_Db::FETCH_OBJ);
$result = $db->fetchAssoc(
'SELECT bug_id, bug_description, bug_status FROM bugs'
);
factory 방법의 첫 번 째 매개 변 수 는$adapter 가 Pdo 입 니 다.Mysql,여 기 는 Pdo 라 는 것 을 기억 하 세 요.Mysql,다시 점프,위의$adapter Namespace='ZendDb_Adapter';생 성 된$dbAdapter 의 값 을 볼 수 있 습 니 다.최종 값 은:Zend 입 니 다.Db_Adapter_Pdo_Mysql,ok,이 이름 으로 zend/db/adapter/pdo 디 렉 터 리 를 찾 았 습 니 다.하,이렇게 많은 익숙 한 얼굴 들 이 익숙 한 MySql,Mssql,Sqlite 등 오래된 얼굴 들 을 보 았 습 니 다주의 하 세 요.안에 저조 한 Abstract.php 가 있 습 니 다.그 안에 그들의 아버지 류 Zend 가 있 습 니 다.Db_Adapter_Pdo_Abstract。Mysql.php 를 열 면 class Zend 를 볼 수 있 습 니 다.Db_Adapter_Pdo_Mysql extends Zend_Db_Adapter_Pdo_Abstract 응,유형 명 ZendDb_Adapter_Pdo_Mysql 은 위 에서 생 성 된 이름과 똑 같이 떨 어 집 니 다.다른 몇 개의 파일 안의 종 류 를 보고 있 습 니 다.그들 은 모두 Zend 를 계승 합 니 다.Db_Adapter_Pdo_Abstract,아 날로 그 를 그 리 려 면 다음 과 같은 아 날로 그 가 있 을 것 입 니 다이어서 Client 와 공장 함수 가 있 는 위치 Zend 를 추가 합 니 다.Db,이 간단 한 유형 도 는아주 깨끗 한 간단 한 공장 이 이렇게 나 왔 을 것 입 니 다.(간단 한 공장 유형 도 같 지 않 습 니까?그것 은 단지 클래스 의 위치 가 잘 놓 여 있 지 않 기 때문이다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Zend_ControllerZend_Controller_Front 는 플러그 인 에이전트 (plugin broker) 를 스스로 등록 하여 플러그 인 이 촉발 하 는 각종 사건 을 관찰 할 수 있 도록 합 니 다.대부분의 경우 개발 자 들 이...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.