이 글은 주로 Yii의 디렉터리 구조, 항목 파일 및 라우팅 설정을 소개합니다. 이제는 여러분과 공유합니다. 도움이 필요한 친구들이 참고할 수 있습니다.
이 글은 Yii의 디렉터리 구조 분석에서 시작됩니다. YII 항목까지. 파일 분석부터 세부 라우팅 설정 및 세부 보기까지 YII 프레임워크의 모든 측면을 포괄적으로 보여 주며 모든 사람에게 권장됩니다.
프로젝트 이름이 "FantaCMS"에서 "testyii"로 변경되었습니다——————Vulgar!
1, 프로젝트 디렉터리 구조 분석
2, Yii 항목 파일 분석
Yii가 프로젝트를 시작하면 프로젝트 기본 구성 파일 배열이 전달되고 Yii가 됩니다. 전체 애플리케이션에서 전역 Yii 개체를 바인딩하고 다음 메서드를 통해 개체를 호출합니다. Yii::app()
Yii 시스템은 구성 파일의 배열 값을 키-값 쌍의 형태로 개체에 바인딩합니다. 예를 들어, 우리가 구성한 구성 파일에서:
'name'=>'My Web Application',
그런 다음 프로젝트의 어느 위치에서나 개체의 속성을 통해 "name" 값을 얻을 수 있습니다. 방법은 다음과 같습니다.
Yii::app()->name;
3, Yii 라우팅 설정
동시에 알아야 할 사항: 컨트롤러 이름에 대해 Yii는 먼저 현재 컨트롤러가 name은 "모듈 이름"입니다. 모듈 이름인 경우 모듈이 먼저 위치합니다.
"모듈"에 대해서는 나중에 프로젝트 빌드할 때 설명하겠습니다.
위 경로를 통해 액세스할 수 있는 것은 다음과 같습니다: SiteController.php 클래스 파일 아래 SiteController 클래스의 actionIndex 메소드
컨트롤러 파일은 컨트롤러 파일이 저장된 디렉토리인 protected/controllers 디렉토리에 있습니다.
참고 Yii 컨트롤러 파일과 액션 메서드 이름을 작성하는 방식에는 컨트롤러에 통일된 접미사 "Controller"가 있고, 액션 메서드에도 통일된 접두사 "action"이 있습니다. 동시에 액션 메서드 이름에 대한 명명 규칙이 필요합니다. "첫 번째 단어를 제외한 모든 단어의 첫 글자는 대문자로 시작해야 합니다."
Yii의 기본 컨트롤러 이름은 site
기본 작업 이름은 index
이므로 위 경로와 직접 액세스는 컨트롤러 이름과 작업 이름을 지정하면 다음과 같습니다: http:/ /localhost/testyii/ 효과는 동일합니다
4, 보기 호출
작업 메서드에서 다음을 호출합니다: $this->render('index ');
해당 작업 메서드 파일에 대한 보기를 지정하려면 보기 파일은 다음 위치에 있습니다: protected/views/site 디렉토리
여기서: site는 해당 컨트롤러 이름 폴더이며, 각 컨트롤러 이름은 해당하는 고유한 폴더 이름을 가져야 합니다.
그러면 액션 메소드에서 'index'로 지정된 특정 뷰 파일은 사이트 컨트롤러 아래에 지정된 'index.php' 뷰 파일입니다. 또한 참고:
뷰를 호출하는 방법에는 두 가지가 있습니다.
$ This-& gt; render ---- & gt;는 템플릿 파일
및
을 호출합니다. $ This-gt;
5
그런 다음 "컨트롤러" 컨트롤러 파일인 Controller.php를 엽니다. 이 파일은 protected/comComponents 디렉터리에 있습니다.
"컨트롤러" 컨트롤러 코드의 스크린샷은 다음과 같습니다.
Yii를 통해: public $layout='//layouts /column1'; 작업 메서드의 공개 템플릿 파일을 지정합니다.
공개 템플릿 파일은 아래와 같이 protected/views/layouts 디렉터리에 있습니다.
이제 템플릿 파일을 만듭니다: testlayout.php, 코드는 다음과 같습니다. :
여기서 ""는 Yii
에 지정된 템플릿 파일의 콘텐츠 교체 방법입니다. "컨트롤러" 컨트롤러의 템플릿 파일을 다음과 같이 수정합니다: public $layout='//layouts/testlayout';
그런 다음 다음을 방문하세요: http://localhost/testyii/index.php?r=site/index 결과는 다음과 같습니다. 표시됨:
그런 다음 템플릿 파일이 우리 고유의 사양이 된 것을 발견했으며 템플릿 파일을 렌더링하는 데 뷰 파일이 필요하지 않은 경우 액션 메서드에서 뷰 파일을 호출할 때 이를 사용할 수 있습니다: $this- >renderPartial 메소드
또는 전체 프로젝트에서 템플릿 파일을 호출할 필요가 없으면 액션 메소드에서 모든 뷰 파일을 사용할 수 있습니다: $this->renderPartial
또는 뷰 템플릿 파일 설정 예: public $layout='';
다음 섹션에서 계속: Yii의 마술사: gii, Yii 모듈 및 모듈 사용자 정의
관련 권장 사항:
위 내용은 Yii 디렉토리 구조, 항목 파일 및 라우팅 설정의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!