Home  >  Article  >  Backend Development  >  Detailed explanation of PHP basic knowledge

Detailed explanation of PHP basic knowledge

小云云
小云云Original
2018-03-22 13:03:281914browse

This article mainly shares with you a detailed explanation of the basic knowledge of PHP, hoping to help everyone.

Course opening notice: php Chinese website "The 10th PHP Online Training Course" is currently being registered!

Double quotation marks explain variables, single quotation marks do not explain variables

Insert single quotation marks between double quotation marks, and if there are variables in single quotation marks, Variable explanation
The variable name in double quotes must be followed by a special character other than a number, letter, or underscore, or the variable must be enclosed in {}, otherwise the part following the variable name will be treated as a whole, causing a syntax error
You can use single quotes as much as possible for single quote characters. Single quotes are more efficient than double quotes.

The difference between GET and POST submission methods

GET generates one TCP packet; POST generates two A TCP packet;
For GET request, the browser will send the http header and data together, and the server will respond with 200 (return data)
For POST, the browser will send the header first, and the server will respond with 100 continue , the browser then sends data, and the server responds with 200 ok (returning data).
GET is harmless when the browser rolls back, while POST will submit the request again
The GET request will be actively cached by the browser, but POST will not, unless manually set
The GET request parameters will be complete Retained in the browser history, while the parameters in POST will not be retained
GET requests can only be URL encoded, while POST supports multiple encoding methods
GET is less secure than POST because the parameters are directly exposed in URL, so it cannot be used to pass sensitive information


How to get the real ip of the client

$_SERVER['REMOTE_ADDR'] or getenv('REMOTE_ADDR')
can be used Convert ip2long() to number


The difference between include and require

require is an unconditional inclusion, that is, if require is added to a process, require will be executed first regardless of whether the condition is true or not. When the file does not exist or cannot be opened, , an error will be prompted and program execution will be terminated
include has a return value, but require does not (maybe because require is faster than include), if the included file does not exist, an error will be prompted, but The program will continue to execute
Note: require is fatal when the included file does not exist or has a syntax error, but include is not


What are the advantages of AJAX

ajax is asynchronous Transmission technology can be implemented through JavaScript or through the JQuery framework to achieve partial refresh, which reduces the pressure on the server and improves the user experience.


In the development of the program, how to improve the operation of the program Efficiency

Optimize SQL statements, try not to use select * in query statements, use which field to check which field;
Use less subqueries and can be replaced by table connections;
Use less fuzzy queries;
Create an index in the data table;
Generate cache for data frequently used in the program;


The difference between SESSION and COOKIE

Storage location: session is stored on the server, cookie is stored In the browser
Security: session security is higher than cookie
Reference link: https://www.zhihu.com/questio...


The difference between isset and empty

isset() function is generally used to detect whether a variable is set
If the variable does not exist, it returns FALSE
If the variable exists and its value is NULL, Also returns FALSE
If the variable exists and the value is not NULL, then returns TRUE
The empty() function checks whether the variable is empty
If the variable does not exist, it returns TRUE
If the variable exists and its value For "", 0, "0", NULL,, FALSE, array(), var $var; and objects without any attributes, TRUE
If the variable exists and the value is not "", 0, "0 ", NULL,, FALSE, array(), var $var; and objects without any attributes, return FALSE


Database three normal forms

First normal form: 1NF is the The atomicity constraint of attributes requires that the attributes be atomic and cannot be decomposed;
Second Normal Form: 2NF is the uniqueness constraint on records, requiring records to have unique identifiers, that is, the uniqueness of entities;
Third Normal Form : 3NF is a constraint on field redundancy, that is, any field cannot be derived from other fields. It requires that the fields are not redundant.


The difference between primary key, foreign key and index

Definition:
Primary key--uniquely identifies a record, cannot be repeated, and is not allowed to be empty
Foreign key --The foreign key of a table is the primary key of another table. The foreign key can be repeated and can be a null value
Index--This field has no duplicate value, but it can have a null valueItalic text
Function:
Primary key--used to ensure data integrity
Foreign key--used to establish connections with other tables
Index--used to improve the speed of query sorting
Number :
Primary key--There can only be one primary key
Foreign key--A table can have multiple foreign keys
Index--A table can have multiple unique indexes


The difference between heap and stack

The stack is the memory space allocated during compilation, so your code must have a clear definition of the size of the stack;
The heap is where the program runs During the dynamically allocated memory space, you can determine the size of the heap memory to be allocated based on the running status of the program.

Related recommendations:

Compilation of basic PHP interview questions

Detailed explanation of basic PHP function examples

php basic knowledge note sharing

The above is the detailed content of Detailed explanation of PHP basic knowledge. For more information, please follow other related articles on the PHP Chinese website!

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