Next Section: 何为FPM的三种模式812 plays

5 秒后自动播放下一节
  Watch Again

PHP7底层源码级开发实战

Introduction >
ChapterCourseware
Chapter1PHP7 underlying source code level development practice (1)

Course Introduction

Take you to compile and install PHP7

How to compare the performance of PHP7 and PHP5 (without comparison, there is no gap)

What are the new features of PHP7?

PHP7 has other new features

Get to know all the features of PHP7 again

What is the small and elegant zval

Zval actual combat corresponding to different variables

Zend_string and copy-on-write practice

Take you through the practical use of reference types

Chapter2PHP7 underlying source code level development practice (2)

What is an array in PHP7 source code

Take you to practice adding, deleting, modifying and checking arrays

Continue to practice adding, deleting, modifying and checking arrays (thoroughly knowing the underlying implementation logic of arrays)

Summarize the basic variables again

Memory management basics

What is the real memory allocation process_HD

What is Small memory management?

Take you to practice Small memory management

Chunk memory alignment

Understand the real markings of Small and Large memory

Chapter3PHP7 underlying source code level development practice (3)

Judgment of memory marking and memory release size

Summary of memory management

PHP running life cycle

What is CLI mode

Practical life cycle of CLI mode

Understand the function call diagram of module initialization part

Detailed explanation of php_module_startup stage

Detailed explanation of php_request_startup

Detailed explanation of execution and management phases

What are the three modes of FPM

Chapter4PHP7 underlying source code level development practice (4)

Basic knowledge of network programming

Network programming practice

Signal processing practice

FPM life cycle

Practical combat: debugging FPM using GDB

FastCGI protocol theory explanation

FastCGI protocol in action

Continue to practice the FastCGI protocol

Chapter Summary

Chapter5PHP7 underlying source code level development practice (5)

Do interpreted languages ​​also need to be compiled?

NFA and DFA

Using re2c for lexical analysis

Introduction to Grammar Analysis and Backusian Paradigm

Practical combat: using bison for syntax analysis

Lexical and syntactic analysis of PHP7

Practical combat: PHP7 lexical analysis process

PHP7 syntax analysis process

AST compiled into instruction set

Practical combat: the process of compiling AST into opcode

Chapter6PHP7 underlying source code level development practice (6)

The basics of Zend virtual machine

Practical combat: Execution of Zend virtual machine

Summary and review

AST, stack, symbol table and instruction set of break syntax

break command execution process_HD

AST, stack, symbol table and constants of include syntax

Execution of include syntax

AST of conditional judgment grammar

Stack, symbol table, constants and instruction set for conditional statements

The execution process of conditional syntax

Chapter7PHP7 underlying source code level development practice (7)

foreach's AST, stack, symbol table and constant array

foreach instruction set

The execution process of foreach syntax

Exception handling AST, stack, symbol table, constants and instruction set

Exception handling execution process

Write a simple extension

Practical combat: detailed analysis of expansion

A simple logging extension

SeasLog extended analysis (1)

SeasLog extended analysis (2)

Chapter8PHP7 underlying source code level development practice (8)

Internal function sort analysis

internal extended date

Course Review and Outlook

  • CancelreplySending
  • Cancelpost a noteSending