Home  >  Article  >  Backend Development  >  PHP Kernel Learning-01-Preparation_PHP Tutorial

PHP Kernel Learning-01-Preparation_PHP Tutorial

WBOY
WBOYOriginal
2016-07-14 10:09:48822browse

I haven’t written anything about PHP for a long time. This time we will talk about knowledge related to the PHP kernel.


According to management, let’s prepare the environment before starting to explain:


Environment preparation:


1. For Linux environment, we use ubuntu/debian. Both systems can be used

2. PHP source code, the code we are explaining is php-5.4.13.tar.gz, you can download the code from the php official website

3. The webserver uses nginx and the database is mysql


PHP source code must be prepared, nginx and mysql can be optionally installed


After the PHP source code is downloaded, we will unzip the source code and first take a look at the directory structure of the source code:

build: This mainly contains some files related to source code compilation

ext: PHP extension source code path

main:


Zend: zend engine implementation directory

pear: PHP extension and application repository

sapi: Various server abstraction layer codes, such as apache, nginx, etc.

TSRM: Thread-Safe Resource Manager

test: test code


To view the source code, we use vim+ctags. If you don’t understand what this is, please Baidu it yourself.

Knowledge preparation:

There are many macro definitions used in PHP source code. Before starting, let’s review the knowledge related to macros.

1. Double ## This is the connector in C language. Let’s look at an example and you will understand.

#define TEST(name) hello_##name

Let’s take a look at the result of calling: TEST(world): hello_world

Do you understand?

2. Let’s take a look at the # sign again. The function of this symbol is to add double quotes before and after the replaced value of the macro variable. Let’s look at an example

#define TEST(str) #str

Let’s take a look at the call: printf(TEST(HELLO WORLD)); The result is printf("HELLO WORLD");

3. #line This command is used to change the current line number and file name


4. There are also some commonly used macros, which we will introduce when we use them in the future


www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/477574.htmlTechArticleI haven’t written anything about PHP for a long time. This time we will talk about the knowledge related to the PHP kernel. According to management, let’s prepare the environment before starting to explain: Environment preparation: 1. Linux environment...
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn