One: 모듈 설계
단일 모듈이 기본으로 사용되며, 단일 모듈이 지원되며, 모든 모듈은 app을 루트 네임스페이스로 사용합니다.
공통 모듈을 생성할 수는 있지만 다른 모듈에서 직접 접근할 수는 없습니다. 보안 강화를 위해
공통 클래스 임의로 상속 가능
두 가지: tp5 구성
1 기존 구성
구성 디렉터리를 정의합니다
항목 파일에서
define('CONF_PATH',__DIR__.'/../conf /');
2 애플리케이션 구성
이전 섹션의 디렉터리에 새 config.PHP를 생성합니다
return array();
배열에는 구성 항목이 있습니다
3 확장 구성
다른 구성 분할 쉽게 관리할 수 있도록 구성 디렉터리에 새 확장 구성 폴더를 추가로 생성한 다음
새 구성 파일을 직접 생성하세요
예: qiniu.php
구성 형식은 위와 동일합니다
tp5를 사용하면 데이터베이스 구성을 config 폴더 아래에 직접 배치할 수 있습니다(config.php 레벨과 동일)
4 시나리오 구성
동일한 시나리오에서 사용되는 다양한 구성
config.php에서 app_status를 구성한 다음 추가
5 모듈 구성에서 해당 환경 구성
동일한 모듈 이름으로 폴더를 생성한 후 새로운 config.php 파일을 생성하세요
모듈 구성 디렉터리는 config 디렉터리와 일치합니다. 추가 확장 구성을 생성할 수 있습니다. . 확장 구성은 해당 모듈에서만 작동합니다
6 동적 구성
a. 컨트롤러의 __construct 생성자에 있는 도우미 함수 config를 사용하는 구성 항목이 컨트롤러
b에 적용됩니다. 메소드에서 도우미 함수를 사용하는 항목은 수정된 메소드에서만 적용됩니다
7 구성 클래스 사용
구성 구성을 동적으로 변경하려면 도우미 함수 config() 및 구성 클래스
config(' key', 'value', 'scope')
키 존재 여부 확인
config('?key');
8 환경 변수 구성 및 사용
3: 라우팅
1 항목 파일
public/index.php 단일 항목
2 숨겨진 항목 파일
은 모두 숨겨진 index.php
a 아파치의 다시 쓰기 모듈을 켜고 모든
b .htaccess 구성이 공용 디렉토리에 있으므로 구성할 필요가 없습니다. 직접
2 항목 파일 바인딩
모듈 이름 바인딩, uri 단축
예를 들어 백그라운드 모듈을 바인딩하려면
admin.php에 정의됨 difine( 'BIND_MODULE','admin'); difine('BIND_MODULE','admin/Index'); 백그라운드 인덱스 컨트롤러를 바인딩합니다.
구성 파일에서 'auto_bind_module'=>true를 설정하면 difine('BIND_MODULE','admin')을 정의할 필요가 없습니다.
3 라우팅
라우팅 활성화(기본적으로 이미 활성화되어 있음) 구성 파일 'url_route_on'=>true,
'url_route_must'=> false(true인 경우 액세스하려면 라우팅을 구성해야 함)
구성 파일에 새로운 라우팅 파일인 Route.php를 생성하세요
라우팅 규칙을 직접 작성하세요
예를 들어, return array(
'news/:id'=>'index/Index /news',
);
4: request
1 요청 request
a 도우미 함수 request()
b Thinkphp의 요청 클래스
c 객체 주입, 메소드에 객체 삽입
2 요청 객체 request
a 브라우저에서 링크 가져오기
도메인 이름 가져오기 $request->domain()
경로 정보 가져오기 $request->pathinfo()
경로 가져오기 $request->path()
b 요청 유형
유형 현재 요청 $request->method();
get 요청인지 확인 $request->isGet()
ajax 요청인지 확인 $request->isAjax()
- - - 휴대폰인지 확인 $request->isMobile();
c 요청의 매개변수
다음 매개변수를 가져오시겠습니까? $request->get()
모든 매개변수 가져오기(경로에 있는 매개변수 포함) $ request- >param()
게시 요청 가져오기 $request->post()
세션 가져오기 $request->session()
쿠키 가져오기 $request->cookie()
d 모듈 가져오기, Controller , Operation
$request->module();
$request->controller(); $request->action();
3 입력 보조 기능
은 tp3의 I 기능과 동일합니다. 2
input('post.name')
input('get.name')
input('cookie.name)
input('session.name)
...
각각 얻을 수 있습니다 요청 항목의 매개변수 종류
4 응답 객체
config('default_return_type','json') , html (기본값)
예:
config('default_return_type','json');
$res = ['code'=>200,'data'=>[1,2,3, 4,5,6 , 7,8,9];];
$ res 반환 JSON 데이터 반환
视
return view(); 기본값은 앱/그룹 이름/보기/컨트롤러 이름/메서드 이름입니다.html
첫 번째 매개변수를 전달합니다.
return view('name')는 기본적으로 앱/그룹 이름/뷰/컨트롤러 이름/이름입니다. .html
첫 번째 매개변수 전달
return view('name1/name2') 기본값은 app/group name/view/name1/name2.html
return view('./index.html') 기본값은 index.php 항목 파일과 동일한 디렉토리에 있는 index.html 파일
템플릿에 값을 전달하세요
두 번째 매개변수는 배열 형식입니다
return view('name',[ '키'= >'값'])
위 내용은 thinkphp5를 시작하기 위해 알아야 할 사항의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!