일반적인 ThinkPHP 프레임워크 인터뷰 필기 테스트 질문 및 답변

coldplay.xixi
풀어 주다: 2020-08-10 17:09:33
앞으로
5273명이 탐색했습니다.

일반적인 ThinkPHP 프레임워크 인터뷰 필기 테스트 질문 및 답변

1. ThinkPHP의 단일 항목 파일을 이해하는 방법은 무엇입니까?

ThinkPHP는 프로젝트 배포 및 액세스를 위해 단일 입력 모드를 사용합니다. ThinkPHP 프레임워크를 사용하면 어떤 프로젝트를 하든 고유한 항목 파일이 프로젝트에 들어간 후 시작됩니다. 다른 작업을 수행할 수 있습니다.

일반적으로 항목 파일에는 세 부분이 포함됩니다.

필수:

1. 프레임워크 항목 파일 로드

선택 사항:

2. 프레임워크 경로, 프로젝트 경로 및 프로젝트 이름 정의

3. 관련 상수 정의 디버깅 모드 및 실행 모드

관련 주제 권장 사항: 2020 thinkphp 인터뷰 질문 및 답변(전체 모음)

2. ThinkPHP의 MVC 레이어링은 무엇인가요?

MVC 디자인 아이디어는 하나입니다. 그 핵심은 애플리케이션의 로직 레이어와 뷰 레이어를 분리하는 것입니다.

ThinkPHP에서 MVC의 사용은 대략적으로 다음과 같이 반영됩니다.

Model (M): 모델 데이터 처리 클래스

Controller (C): 애플리케이션 컨트롤러(핵심 컨트롤러 App 클래스)와 Action 컨트롤러가 모두 담당합니다. 컨트롤러는 액션 컨트롤러가 비즈니스 제어를 완료하고 애플리케이션 컨트롤러가 스케줄링 제어를 완료한다는 것입니다.

View(V): View 클래스와 뷰 템플릿 파일로 구성됩니다.

ThinkPHP에서는 M이나 V에 의존하지 않습니다. 즉, 모델이나 뷰 없이도 작동할 수 있습니다. 심지어 C에도 의존하지 않습니다. 이는 ThinkPHP에도 애플리케이션의 전체 일정을 담당하는 앱 컨트롤러인 Action 위에 마스터 컨트롤러가 있기 때문입니다. C가 없으면 뷰 V가 존재해야 합니다. 그렇지 않으면 더 이상 완전한 애플리케이션이 아닙니다.

3. ThinkPHP 아키텍처를 이해하는 방법(코어 + 동작 + 드라이버(CBD))

Core: ThinkPHP의 핵심 코드, MVC 아키텍처 등

Behavior: ThinkPHP 프레임워크와 함께 제공되는 일부 메서드, 일부는 예약됨 확장 위치 등

드라이버: ThinkPHP는 개발 과정에서 일부 외부 확장 기능뿐만 아니라 데이터베이스 드라이버, 캐시 드라이버, 태그 라이브러리 드라이버 등을 구축했습니다. 간단하고 효율적입니다.

4. ThinkPHP가 SQL 주입을 방지하는 방법

ThinkPHP 아키텍처를 설계할 때 SQL 주입을 방지하기 위해 일부 작업이 수행되었습니다.

주목해야 할 사항은 다음과 같습니다.

SQL 연산에 Array를 사용할 수 있다면 Array를 사용하세요

Sql 문을 사용하여 연산해야 하는 경우 사용자가 입력하는 내용(예: 숫자 유형 강제)을 예측합니다. SQL 키워드 검사, 정규식 매칭 등

5. 디버깅 모드를 활성화하는 방법은 무엇입니까? 디버그 모드의 이점은 무엇입니까?

디버깅 모드를 켜려면 프레임워크 항목 파일 문을 로드하기 전에 항목 파일에 상수 정의 문 한 줄만 추가하면 됩니다.

define("APP_DEBUG",true);

디버깅 모드를 켠 후; , 시스템이 자동으로 켜집니다.

작업 로그, SQL 로그 및 기타 로그, 모든 오류는 디버깅을 용이하게 하기 위해 자세히 기록됩니다.

템플릿 파일 캐시를 끄면 템플릿 수정 사항이 즉시 적용됩니다.

필드 캐싱을 끄면 데이터베이스 필드 수정이 캐시의 영향을 받지 않습니다.

파일 케이스 등을 엄격하게 확인하세요.

디버그 모드는 프로젝트가 온라인 상태가 되기 전에 개발, 디버깅, 데모 등에 편리한 도구입니다.

6. ThinkPHP에서는 어떤 구성 모드가 지원되나요? 우선순위는 무엇입니까?

ThinkPHP는 프로젝트 구성 측면에서 자체 계층적 구성 모드를 만들었습니다. 오른쪽에서 왼쪽으로 우선 순위는 다음과 같습니다.

기존 구성->프로젝트 구성->디버그 구성->그룹 구성-> ->동적 구성

7. ThinkPHP는 어떤 URL 모드를 지원하나요?

ThinkPHP는 URL_MODEL 매개변수를 통해 구성 및 수정할 수 있는 4가지 URL 모드를 지원합니다. 기본값은 PATHINFO 모드입니다. 구성 값은 0, 1, 2, 3입니다: 일반 모드, PATHINFO 모드, REWRITE 모드. 호환 모드

8, ThinkPHP의 시스템 변수는 무엇입니까? 시스템 변수를 얻는 방법은 무엇입니까?

ThinkPHP에서 일반적으로 사용되는 시스템 변수에는 server, session, cookie, get, post, request가 있습니다.

시스템 변수의 출력에는 다음과 같이 $Think를 접두사로 사용해야 합니다.

$Think.server.php_self = $_SESSION[ 'php_self']

9 ThinkPHP에서 M 메서드와 D 메서드의 차이점(고빈도 문제)

M과 D 메서드는 일반적으로 ThinkPHP에서 데이터 모델 클래스를 인스턴스화하는 데 사용됩니다. 메소드는 모델 기본 클래스를 직접 인스턴스화합니다. D 메소드는 상속된 모델 클래스가 있는지 확인합니다. 그렇지 않으면 상속된 클래스가 존재하는 경우 함수가 인스턴스화됩니다.

관련 학습 권장사항: thinkphp

위 내용은 일반적인 ThinkPHP 프레임워크 인터뷰 필기 테스트 질문 및 답변의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:chinacion
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!