2019 Jingdong PHP 구문 분석 엔지니어들은 질문과 답변에 직면

첫째, 객관식 (28 개 질문의 총, 각 질문 5 분)

1.Apache 및 성능 Nginx에 큰 액세스 설명은 정확합니까?

I / O를 모델 A, epoll에 네트워크 아파치 매우 효율적으로 사용

B는 Nginx에 최신 kqueue를 사용하여 네트워크를 I / O 모델을 선택

C는 아파치 프로세스가 HTML 출력이해야 할 일을했을, PHP를 실행, 더 많은 자원을 점유

D는 nginx를 리버스 프록시 서버를 할 수 없다

참고 답 : C

응답 분석 : 1, 아파치의 I / O 모델은 2, Nginx에 최신는 epoll을 사용하여 매우 비효율적이다 선택 네트워크를 사용 (리눅스 2.6 커널)와 kqueue (FreeBSD의) 네트워크 I / O 모델 3, 많은 일을 아파치 과정 : PHP, HTML 출력을 실행하는 모든 작업, 소비 더 많은 자원 (CPU, 메모리)

 

2. 다음 작동 모드의 어떤 더 이상 PHP5.3 후 PHP를 지원하지?

A, CGI

B, FASTCIG

C, COUNT

D, CLI

참고 답 : C

응답 분석 : 설치가 더 이상이 문서 php5isapi.dll이 없다 후 PHP5.3 후, PHP는, 더 이상 ISAPI 모드입니다. PHP의 IIS6 높은 버전을 사용하려면, 당신은 FastCGI를 확장 한 다음 IIS6 지원 FastCGI를 설치해야합니다.

오류 3.yii 위젯 정보는 무엇입니까?

코드 재사용을 볼 수있는 위젯 객체 지향 방법

B는 여전히 뷰에서 위젯을 만들 수있는 MVC 모드, 위젯 일반적으로 기반 로직 코드, 표시 내용을 따라야합니다

위젯을 사용하는 경우는 C, 작은 부분이 독립적이지 설계되어야 말하자면, 그것은 추가 처리를 필요로하지 않고 직접 폐기 될 수 없다

작은 부품은 CSS와 같은 외부 자원을 필요로 할 때 YII이 문제를 해결하기 위해 자원 팩을 제공 할 때 D는, 자바 스크립트 및 기타 그림은 운이 더 어려울 것입니다.

참고 답 : C

대답 분석이 : 작은 부품이 독립 할 수 있도록 설계되어야한다, 그 위젯의 사용, 그들은 추가 처리가 필요없이 직접 삭제할 수 있습니다 말을하는 것입니다.

(질문에 인터뷰를 위해 더 많은 답변을 그룹 677 079 770에 가입하세요.)

4. 구조 모델에 관한 다음 문은 잘못?

A, 구조 모델은 새로운 기능을 구현, 포장의 종류의 기초를 파괴하지 않을 수 있습니다

B는, 오브젝트의 세트를 생성하는데 사용 구조 모델은 주로

C는, 통일 된 인터페이스를 생성하는 구조적 모델 클래스 세트를 액세스 할

같은 클래스가 추정하는 시스템과 상호 작용 결코 할 수 있도록 D는, 구조 모델, 포장의 종류의 기초를 파괴하지 않을 수 있습니다

답변 : B

분석 답 형 구조 (구조) 클래스 또는 객체 사이의 처리의 조합.

 

5는 PHP 마법 방법은 무엇입니까?

A, __ 함수

B, __에

C, __ 라인

D, __ 호출

참고 대답 : D

答案 解析 : __ 구조체 __destruct __call __callStatic __get __set __isset __clone __unset __sleep __wakeup __toString __invoke __set_state

 

6.substr 기능의 역할은 무엇입니까?

A, 검색 문자열

B, 대체 문자열

C 문자열 차단

D, 절편의 길이

참고 답 : C

분석 답 : 문자열의 문자열 부분의 차단을.

(질문에 인터뷰를 위해 더 많은 답변을 그룹 677 079 770에 가입하세요.)

다음 데이터베이스 제품의 7 어느 pureXML을 데이터 서버 기술을 사용하는 것입니다 :

A, SQL 서버

B, DB2

C, MySQL은

D, JSON

답변 : B

분석 답 : 없음

 

8. 관리자는 다음 자동으로 생성 새 사용자의 홈 디렉토리 자신의 디렉토리에 파일을 복사 할 수있는 디렉토리에 파일을 배치해야합니다, 모든 새로운 사용자의 디렉토리 파일의 .bashrc를 분산 할 .

A,은 / etc / skel이 /

B,은 / etc / 기본 /

C,은 / etc / 기본 설정 /

D,은 / etc / profile.d /

답변 :

분석 답 :이 디렉토리에있는 모든 파일이 자동으로 새로 추가 된 사용자의 홈 디렉토리에 복사 할 때 우리는 새로운 사용자를 추가 할 때의 / etc / skel이 / 디렉토리는 새 사용자 프로필 디렉토리에 파일을 저장하는 데 사용됩니다. 이 디렉토리에있는 모든 파일은 (포인트 파일로 시작하는) 숨겨진 파일입니다.

 

MySQL은 9.) (SQL 문 새 데이터베이스를 만들 수 있습니다

A, CREATE DATABASE

B는, 테이블 만들기

C는 데이터베이스를 작성

D는 DB를 생성

답변 :

분석 답변 :

원래 올바른 옵션은 라이브러리 문을 만듭니다 : DATABASE 데이터베이스 이름을 만듭니다.

테이블 만들기 B 옵션은 명령문의 테이블을 만드는 것입니다.

C와 D 옵션 구문 오류입니다.

 

파일 형식을 결정하기 위해 관련하여 (10)는, 다음과 같은 문장은 정확합니까?

A, 파일 확장자에 따라 올바르게 파일 형식을 확인할 수 있습니다

B 정확하게 파일의 파일 타입에 기초하여 특성 값에 따라

정확하게 파일 유형에 기초하여 상기 파일의 크기에 따라 C와 특성치

D는 어떤 방법으로 100 % 특정 파일 형식이 될 수 없습니다

참고 대답 : D

가짜 수있는 방법을, 그래서 우리는 방법으로 만 무한 닫을 수 있지만 완전히 올바른 판단을 보장 할 수 없습니다 : 분석에 응답합니다.

 

11. 다음 쿼리 효율성있는 최악 요청할 수 있습니다, 세 개의 필드 C, A, B와 MySQL의에 복합 인덱스 a_b_c을 설정?

A, 시험 선택 * 여기서 A = 10 및 b> 50

B, 시험 선택 * 여기서 A = 10, B> C로 10 주문

C 선택 * 시험에서 어디 의해 = 10 및 b = 10 주문

D 선택 * 시험에서 여기서 A = 10, B = 10 C로 주문

답변 : B

분석 답 : 왼쪽 일치하는 원칙을 : 복합 인덱스는, a_b, a_b_c이 포함되어 있습니다. 복합 인덱스는 정확한 질문에 대한 필드의 앞, 뒤에 종합 지수를 지출하면 이벤트에 부정확 한 쿼리는 복합 인덱스를 사용하지 않습니다. A 옵션 장치는, a_b 인덱스를 사용합니다. B 옵션은 a_b 인덱스를 사용하고, 순서는 최악의 효율성는 C가있다. a_b 인덱스를 사용하여 C 옵션. D 옵션은 a_b_c 인덱스를 사용합니다.

 

PHP 배열의 키와 값 12. 제약, 문 맞습니까?

A, 키에만 INT 또는 문자열 유형, 값은 모든 유형 만들 수 있습니다

B는 키는 임의의 타입 일 수 있고, 값은 임의의 타입 일 수있다

C가, 키가 어떤 형태 일 수 있고, 값은 지능이나 문자열 유형일 수

D, 키에만 INT 또는 문자열 유형, 값은 문자열 유형 또는 INT 될 수 있습니다

답변 :

분석 답변 : 키는 INT 또는 문자열 유형이 될 수 있습니다, 값은 모든 유형을 만들 수 있습니다 ..

(질문에 인터뷰를 위해 더 많은 답변을 그룹 677 079 770에 가입하세요.)

13. 다음 코드는 허점이있다?

 

 

 

A, 어떤 허점 없다

해당 서버 규칙 B는 모든 파일을 삭제합니다

C는 적절한 규칙을 원하는 파일의 내용 중 얻을 수 있습니다

적절한 규칙 D는 관리자 암호를 변경할 수 있습니다

참고 답 : C

분석 답 : 우리가 demo.php 디렉토리를 제출하는 경우 = | 고양이의 / etc / 서버의 모든 관리자 계정 정보를 얻을 수 있습니다은 passwd?

 

14. 다음 쉘 코드 기술 맞습니까?

-p 읽기 "입력 IP를하시기 바랍니다 :"$ IP는 ||까지 IPping $ IP -w &>을 / dev / null &&입니다 에코 에코 $ IP가 다운

A, 로컬 IP를 확인

B는 서버의 IP 액세스를 찾을 수

C는 IP를 통해 액세스 파일을 찾을 수

D는 결정 여부 IP 호스트를 입력하여 셧다운

참고 대답 : D

분석 답 : -p 읽기 "입력 IP를하시기 바랍니다 :"IP는 $ IP가 $ IP 에코 다운까지 ||이다 에코 판단의 IP 핑 (ping) $ IP -w 호스트 &>을 / dev / null && 입력하라는 메시지 : 핑이의 IP 여부를 결정하기 위해 그것은 종료되었습니다.

 

다음 모델 15. 어떤 객체를 사용하는 것입니다, 신속하게 개체의 숫자를 생성?

A, 추상적 인 공장 (추상 공장) 모드

B (복합) 모드의 합성

C, 프로토 타입 (프로토 타입) 모드

D, 브릿지 (다리) 모드

참고 답 : C

분석 답 : 프로토 타입 모델 : 프로토 타입 예제의 사용을 "복제"새로운 객체를 생성 할 수 있습니다.

 

컴퓨터 코드는 내부에 16 한 중국어 문자가 저장?

A, 지역 번호

B, GB 코드

C, 기계 코드

D, 기계 코드

참고 답 : C

분석 답 : 기계 코드는 한자 컴퓨터 코드 내부에 저장된다.

 

17. 어떤 동작의 어떤 PHP 모드 아닌가요?

A, CGI

B, FastCGI를

C, apache2handler

D, 아파치

참고 답 : D. 응답 분석 : 처음 세 일반적으로 작동, 아파치 웹 서버 소프트웨어의 모드를 사용합니다.

 

PHP 모드 수정 문에 관하여 (18)가 잘못?

A, 난 대소 문자 구분 일치

B, 문자열의 m ^ 처음에만 일치합니다

C는 빈 X와 # 코멘트는 무시됩니다

D 및 PHP의 실행 코드 평가로 대체 문자열

답변 : B

분석 답 m이 향상된 광고 앵커 모드, 전후 \\이고, n은 시작 및 종료로 간주된다.

 

19. 고유 명령을 점 찍어

A : VI

B, 정력

C, LL

D 나노

참고 답 : C

응답 분석 : VI, 정력 나노 편집 문서 편집기, 그리고 LL은 디렉토리 화면에서 파일입니다.

 

20. PHP 파일 포인터 동작의 기능 다음 중 아닌가요?

A, ftell은 ()

B, fseek는 ()

C, 파일 ()

무엇이 일어 났는지를 결정하기 위해 feof D ()

참고 답 : C

분석 답 : ftell은 () 파일 포인터 위치 fseek는 () 파일 포인터 무엇이 일어 났는지를 결정하기 위해 feof를 찾습니다를 (반환) 테스트 끝에 파일 포인터 여부.

 

오류 PHP 구성 옵션에 관해서는 21입니다

A, 오픈 short_open_tag은 PHP 코드의 사용이 약식 시작 허용 (<?>)

B는 매직 코트가 활성화 된 경우, 대부분의 기능은 백 슬래시와 따옴표를 이스케이프합니다 데이터베이스 및 텍스트 세그먼트를 포함, 외부 데이터의 형태를 반환

C, 구성 옵션이 실행시에 ini_set을 사용하여 설정할 수 있습니다, 그래서 당신은 항상 display_errors를 켤 수의 때문에

D는 PHP 안전 모드는 공유 서버 (공유 서버) 및 보안 문제의 설립을 해결하기위한 시도이다

참고 답 : C

분석 답 : 디스플레이 \의 _errors도 설정할 수 있지만 런타임에 (의 INI \의 _set ()를 사용하여), 그러나 치명적인 오류가 유효하지 않은 경우 스크립트가 어떤 런타임을 설정 나타납니다. 작업이 실행 것으로 예상된다 있기 때문에이 경우에는 실행되지 않습니다. 이 민감한 정보를 노출합니다.

 

() 다른 스택 순서와 다른 제목 요소 (22) 6.3 푸시 순차적으로

A, A, 4

B, B, 5

C, C 6

D, D, 7

답변 : B

분석 답 스택에 N 개의 상이한 요소들에 대해 일련의 적층 수가 6 \ 5 * \ * 4/4 \ 3 * \ * \ 1 5 * 2, 즉, 레어의 수.

 

23. HTTP1.0에 비해 HTTP1.1을 포함하지 않는 장점 ()

A, RTT가의 수를 감소   

B는 지속적인 연결을 지원합니다 

C, TCP 슬로우 스타트의 수를 감소   

D는 보안을 향상

참고 대답 : D

응답 분석 : 영구 연결을 지원할 수있는 HTTP 1.1 HTTP1.0 최적화 단점은, TCP 연결은 HTTP 요청과 응답, 소비를 줄이고 연결 설정 지연 및 TCP 슬로우 스타트의 수의 감소를 폐쇄 복수를 전송할 수있다 결과가 반환을 기다리는 요청없이 클라이언트를 허용하고있는 동안, 당신은, HTTP 1.1은 또한 신원, 상태 관리 및 캐시 캐싱 메커니즘에 대한 정보를 제공합니다 필요한 시간의 RTT 및 다운로드 프로세스의 수를 줄이고, 다음 요청을 발행 할 수 있습니다 요청 헤더와 응답 헤더. 그러나 안전 성능의 특성은 HTTP1.1 아니라, HTTPS HTTP 주소 보안 문제, 즉 보안 하이퍼 텍스트 전송 프로토콜 (SHTTP)를 사용.

 

(24) 다음과 같은 관련 커널 스레드와 사용자 스레드 문은 잘못?

로 <br> I / O가 대기 상태에 있기 때문에, 사용자 스레드는 전체 프로세스는 상태가 아닌 디스패처를 실행하는 다른 스레드를 기다릴 수있는 기회를 주었다됩니다

커널 모드 만이 아니라 사용자 모드 컨텍스트 B 효과는 커널 스레드

C는 사용자의 커널 스레드 스케줄링 및 스레드는 커널 모드 통과해야

다중 프로세서의 동시 활용을 도움이 될 것입니다 D, 커널 스레드,하지만 더 많은 시스템 지출을 차지

참고 답 : C

분석 답변 : 사용자의 어떤 존재가없는 의미 스레드, 또는 golang 필요하지 않습니다.

 

 

 

(25) 참조에 관한 다음 문은 잘못?

A, C는 참조 포인터 아니다

B는, 참조는 두 변수가 같은 콘텐츠를 가리키는 사용 할 수 없습니다

C, 참조 변수를 통과 할

이 함수는 인수의 값을 수정할 수 있도록 D가 변수는 참조 함수로 전달 될 수있다.

답변 : B

분석 답 : 참조는 동일한 콘텐츠를 가리 키도록 두 변수를 사용할 수있다.

 

26. 다음 코드의 출력 결과는?

 

 

 

A, 1

B, 2

C 3

D, 4

답변 :

답변 분석 : 조사 운영자 우선 명칭 $의 A = (2> 2) 2 3 $ ++ A : - $ A; $ 동등한 = (2>) 2 : ???? (3 + +는 달러 : - $ a); 첫번째 괄호 1에서 얻어진 연산 결과를 계산하는 단계를 포함한다.

27. 다음 코드의 실행 결과는?

 

 

 

A, 0

B 1

C 2

D, 3

답변 : B

분석 대답 : 당신이 축하를 대답하면, 당신은 함정에 빠지지. 이 질문은 사실의 주요 테스트 포인트이며, 첫 번째 점은 정적 정적 유형입니다. 이 값은 첫 번째 호출 문이 0과 같다, 항상 정적 및 증분은 1과 같다. 두 번째 호출 한 다음 증분은 1 2 같습니다. 그러나 사실 트랩이, 그리고 즉 ++ ++ A는, 전방이 ++ ++ 반환 값은 그 이후 제 증가 후 증가하는과의 차이이기 때문에, 그 결과가 1과 동일하다.

 

프로세스가 실행되면 다음과 같이 수행 28.PHP : 스캔 (렉싱) - 편집 - 실행 - 각각 의미 구문 분석 :

토큰 간단하고 의미있는 표현으로 변환하는 언어 단편 (토큰)로 A, PHP 코드, 옵 코드가 순차적으로 수행 식은 Opocdes 컴파일

B가과 발현 Opocdes 컴파일 언어 코드 단편 PHP (토큰), 변환은 순차적으로 실행 오피 코드, 토큰은 간단하고 의미있는 표현으로 변환 될

토큰 간단하고 의미있는 표현으로 변환 C 언어 단편으로 PHP 코드 (토큰),식이 Opocdes 순차적 실행 오피 코드로 컴파일

D, 및 토큰 단순한 의미 발현 순차적으로 실행 오피 코드로 변환하는 식 Opocdes 컴파일 언어 코드 단편 PHP (토큰), 변환

참고 답 : C

분석 답변 :

정답은 C이다

단편 PHP 언어 코드 변환 (렉싱) 1.Scanning (토큰)

2.Parsing는, 토큰은 단순하고 의미있는 표현으로 변환됩니다

3.Compilation는 발현 Opocdes로 컴파일

4.Execution 상기 함수 PHP 스크립트를 수행하는 시점에서 순차적으로 연산 코드 하나를 수행 하였다.

 

둘째, 객관식 문제 (1 5 당 점의 질문)

MYSQL에서 1. HASH 인덱스에 대한 다음 설명은 정확합니까?

테이블이 MYISAM 메모리 HASH 인덱스 테이블로 변경 한 경우, 쿼리의 효율성에 영향을 미치지 않습니다

B 만 식 또는 = 비교 연산자를 사용 <=>

C는 최적화에 의해 가속 조작 주문을 해시 인덱스를 사용할 수 있습니다

D는 단지 전체 행을 검색하는 키워드를 사용할 수 있습니다

답 : B, C, D

분석 답변 :

효율은 감소합니다. 간단히 말해, 해시 인덱스는 특정 해시 알고리즘을 사용하는 것입니다하는 B + 트리와 유사한 새로운 해시 값의 주요 용어는 하나의 해시 알고리즘으로 검색되는 리프 노드에 루트에서 단계적으로 같이 할 필요가 없습니다 그것은 매우 빠르고 적절한 위치에 즉시 배치 할 수 있습니다. 유의 한 차이 및 해시 인덱스 B + 트리 인덱스이다 : 그것은 쿼리의 상당 인 경우 하나의 알고리즘 후 키 적절한 찾을 수 있기 때문에, 다음 해시 인덱스는 분명, 절대 우위를 가지고, 물론,이 전제는 열쇠입니다 그것은 유일하다. 범위 질의 경우,이 시간이 인덱스를 해시, 그림에서 볼 수있는, 키가 고유하지 않으면, 우리는 당신이 적절한 데이터를 찾을 때까지 목록을 검색 먼저 키 위치를 찾을 필요하고 나중에에 따라 완전히 원래 키를 주문하기 때문에 쓸모없는, 해싱 알고리즘 후 불연속 될 수 있으며, 방법은 인덱스 전체 범위 쿼리를 다시 사용하지 않으려면, 같은 토큰을, 방법의 해시 인덱스는 없다 인덱스를 사용하여 전체 염기 서열 및 'XXX의 %'(부분적으로 사실, 본질은 범위 쿼리가, 가려 쿼리) 퍼지 쿼리의이 부분처럼, 해시 인덱스는 가장 왼쪽 열 공동 다중 일치 규칙 색인을 지원하지 않습니다; B + 트리 인덱스 중복 키 많은 수의 큰 변동, 효율성의 해시 인덱스가 매우 낮은 소위 해시 충돌이 있기 때문에 키워드 검색 효율은 평균이 아닌 B-나무입니다. 참조 :

 

 

 

때때로 콘텐츠 공유 제한 :( 가입 추가 답변 질문 및 학습 자료를 인터뷰 할 그룹 677 079 770).

 ★ 텐센트 수석 PHP 엔지니어 서면 질문 

 ★ 일억 PV 높은 동시성 시나리오 처리를 주문 

 ★ laravel 개발 살쾡이 쇼핑몰 구성 요소 서비스 

 ★ TV 비디오 방송 인프라 프로젝트 전투를 어떤 배너 

 

 

 

추천

출처www.cnblogs.com/993089249a/p/11613404.html