>  기사  >  백엔드 개발  >  PHP의 커널 구성과 PHP 코드 실행 과정 소개

PHP의 커널 구성과 PHP 코드 실행 과정 소개

不言
不言원래의
2018-09-04 17:35:573812검색

이 글은 PHP의 커널 구성과 PHP 코드 실행 과정을 소개합니다. 도움이 필요한 친구들이 참고할 수 있기를 바랍니다.


1. PHP 커널 구성

php에는 총 3개의 모듈이 포함되어 있습니다: php 커널, zend 엔진, PHP 확장 레이어

1.1 php 커널: 요청 처리, 파일 스트림, 오류 처리 및 기타 관련 처리에 사용됩니다. .
1.2. zend 엔진: 소스 파일을 기계 언어로 변환한 다음 zend 가상 머신에서 실행

zend는 전체적으로 두 부분으로 구성됩니다.
컴파일러: PHP 코드를 실행 가능한 opcode로 컴파일하는 일을 담당합니다.
Executor: opcode 출력을 담당합니다. 즉, PHP 스크립트에 작성된 코드 로직이 실행됩니다.

1.3 확장
확장 계층은 PHP가 다음과 같은 특정 작업을 수행하는 데 사용하는 함수, 클래스 라이브러리 및 스트림의 집합입니다. php_openssl 확장 설치와 마찬가지로 open ssl 기능을 사용하기 위한 일반적인 확장은


설치된 확장은 php 설치 경로의 ext 디렉터리에 있습니다.

2. PHP 코드 실행 과정

PHP 执行流程图

PHP의 일반적인 실행 과정은 다음과 같습니다.
우리가 작성한 PHP 코드는 먼저 어휘 분석기와 구문 분석기를 거쳐 컴파일되어야 합니다. 컴파일러, 이것을 보면 '농담하는 거야?'라고 생각할 수도 있습니다. php는 스크립트 언어 아닌가요? 왜 여전히 C/C++처럼 컴파일해야 합니까? 실제로 엄밀히 말하면 PHP는 어휘 및 구문 분석을 거쳐 opcode 중간 코드로 컴파일되고, 그런 다음 zend 실행 엔진에 의해 실행되는 관점에서 보면 PHP가 먼저 컴파일되고 그 다음이 됩니다. java와 매우 유사하지만, java는 코드(.java)를 바이트코드로 컴파일한 후 jvm으로 실행합니다.

관련 추천:

PHP 커널 복호화 시리즈: zend_execute의 실행 프로세스

PHP 커널 탐색을 위한 인터프리터의 실행 프로세스

위 내용은 PHP의 커널 구성과 PHP 코드 실행 과정 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.