Home  >  Article  >  Backend Development  >  Compilation of basic PHP interview questions

Compilation of basic PHP interview questions

小云云
小云云Original
2018-03-21 14:57:453992browse

As a PHP engineer, you will definitely be exposed to some interview questions during the interview. This article mainly shares with you some basic PHP interview questions, hoping to help everyone.

  1. The difference between double quotes and single quotes

  • Double quotes interpret variables, single quotes do not interpret variables

  • Insert single quotes inside the double quotes. If there is a variable inside the single quotes, the variable will be explained.

  • The variable name in double quotes must be followed by a non-digit, Special characters such as letters and underscores, or enclosing the variable with {}, otherwise the part after the variable name will be treated as a whole, causing syntax errors

  • Use single quote characters as much as possible Single quotes are more efficient than double quotes

The difference between GET and POST submission methods

  • GET generates a TCP packet; POST generates two TCP data packets;
    For GET request, the browser will send the http header and data together, and the server responds with 200 (return data)
    For POST, the browser sends the header first, and the server Respond with 100 continue, the browser sends data again, and the server responds with 200 ok (return 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 , while POST will not, unless manually set

  • GET request parameters will be completely 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 on the URL, so they cannot Used to pass sensitive information

How to get the real ip of the client
$_SERVER['REMOTE_ADDR'] or getenv('REMOTE_ADDR')

include and require The difference
require is 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 the program execution will be terminated
include has a return value, but require does not (probably 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 an asynchronous transmission technology, which can be implemented through javascript or the JQuery framework. Partial refresh reduces the pressure on the server and improves the user experience

In the development of the program, how to improve the operating efficiency of the program

  • Optimize SQL statements and query statements Try not to use select *, and use which field to check which field;

  • Use less subqueries and can be replaced by table connections;

  • Use less fuzzy Query;

  • 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

The difference between isset and empty

  • isset() function is generally used to detect whether a variable is set
    If If the variable does not exist, it returns FALSE
    If the variable exists and its value is NULL, it also returns FALSE
    If the variable exists and its value is not NULL, it returns TURE

  • 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 is "", 0, "0", NULL, , FALSE, array(), var $var; and objects without any attributes, return 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 an atom for attributes Constraints require attributes to be atomic and cannot be decomposed;

  • Second normal form: 2NF is a unique constraint on records, requiring records to have unique identifiers, that is, uniqueness of entities;

  • Third Normal Form: 3NF is a constraint on field redundancy, that is, any field cannot be derived from other fields, and it requires that fields are not redundant.

The difference between primary key, foreign key and index

  • Definition
    Primary key - uniquely identifies a record, there cannot be duplicates, no Allow 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 can have a null value.

  • Function
    Primary key--used to ensure data integrity
    Foreign key--used to establish connections with other tables
    Index--is used to improve query Sorting speed

  • Number
    Primary key--The primary key can only have one
    Foreign key--A table can have multiple foreign keys
    Index--One The table can have multiple unique indexes

The difference between heap and stack
The stack is a memory space allocated during compilation, so the size of the stack must be clear in your code Definition;
Heap is a memory space dynamically allocated during the running of the program. You can determine the size of the heap memory to be allocated based on the running conditions of the program.

Related recommendations:

HTML basic interview questions summary

php interview questionsPHP basic interview questions

A few basic PHP interview questions_PHP tutorial

The above is the detailed content of Compilation of basic PHP interview questions. 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