Home  >  Article  >  Backend Development  >  Summary of PHP simple interview questions

Summary of PHP simple interview questions

小云云
小云云Original
2018-03-03 13:05:072798browse

This article mainly shares with you a summary of simple PHP interview questions, hoping to help everyone.

1. The difference between echo, print, and print_r:

  1. echo is a php statement that can output one or more strings and has no return value.

  2. print and print_r are functions with return values.

  3. print() can only print out the value of simple type variables (such as int, string), print_r() can print out the value of complex type variables (such as array, object), echo Output one or more strings

2. Magic constant

Name Meaning
__LINE__ The current line number in the file.
__FILE__ The full path and file name of the file. If used within an included file, returns the name of the included file.
__DIR__ The directory where the file is located. If used within an included file, returns the directory where the included file is located.
__FUNCTION__ Function name
__CLASS__ Class name
__TRAIT__ The name of the Trait. The Trait name includes the scope in which it is declared (for example, Foo\Bar).
__METHOD__ The method name of the class
__NAMESPACE__ The name of the current namespace (size-sensitive Write).

3 .

1 . The difference between echo, print and print_r:

  1. echo is a php statement, One or more strings can be output, with no return value.

  2. print and print_r are functions with return values.

  3. print() can only print out the value of simple type variables (such as int, string), print_r() can print out the value of complex type variables (such as array, object), echo Output one or more strings

2. Magic constant

Name Meaning
__LINE__ The current line number in the file.
__FILE__ The full path and file name of the file. If used within an included file, returns the name of the included file.
__DIR__ The directory where the file is located. If used within an included file, returns the directory where the included file is located.
__FUNCTION__ Function name
__CLASS__ Class name
__TRAIT__ The name of the Trait. The Trait name includes the scope in which it is declared (for example, Foo\Bar).
__METHOD__ The method name of the class
__NAMESPACE__ The name of the current namespace (size-sensitive Write).

3 The difference between .get and post

1.Get and post are two ways to submit data from the form to the database. When the get submits the data, the relevant data information will be displayed in In the url, the values ​​passed correspond to each field in the form. Post uses the http post mechanism to place each field in the form and its content in the HTML header and transmit it to the URL address pointed to by the action attribute. Users cannot see this process.

2. The amount of data transmitted by get is small and cannot be larger than 2KB. The amount of data transmitted by post is relatively large and is generally unrestricted by default.

3. Post is obviously better in terms of security performance. But get is better in terms of execution efficiency.

4. The difference between session and cookie

1. Cookie data is stored on the client's browser, and session data is placed on the server.

2. Cookies are not very safe. Others can analyze cookies stored locally and perform cookie parsing to obtain user information.

3.session will be saved on the server within a certain period of time. When access increases, it will take up more server performance. If you consider reducing server performance, you should use cookies.

4. The data saved by a single cookie cannot exceed 4kb. Many browsers limit a site to save up to 20 cookies.

For a detailed explanation of the session mechanism, I refer to a blog written by a blogger http://blog.csdn.net/fangaoxin/article/details/6952954/ which seems very detailed and interesting. Students can take it as a reference.

5. What are transactions in the database?

A transaction is a series of operations performed as a logical unit. A logical unit of work must have four properties, called ACID (Atomicity, Consistency, Isolation, and Durability) properties. Only In this way, it can become a transaction:
Atomicity
The transaction must be an atomic unit of work; for its data modification, either all of them will be executed or none of them will be executed.
Consistency
When a transaction is completed, all data must be in a consistent state. In the relevant database, all rules must be applied to transaction modifications to maintain the integrity of all data. At the end of the transaction, all internal data structures (such as B-tree indexes or doubly linked lists) must be correct.
Isolation
Modifications made by concurrent transactions must be isolated from modifications made by any other concurrent transactions. The state of the data when a transaction views the data is either the state before it was modified by another concurrent transaction, or the state after another transaction modified it. The transaction will not view the data in the intermediate state. This is called serializability because it enables the starting data to be reloaded and a series of transactions to be replayed so that the data ends up in the same state as the original transaction execution.
Persistence
After a transaction is completed, its impact on the system is permanent. This modification will be maintained even if there is a system failure.

begin Start a transaction

rollback transaction rollback

commit transaction confirmation

Note: rollback and commit cannot be used in parallel. When used at the same time, only The previous one takes effect.

MYSQL defaults to automatic submission. You can set autocommit=0 to disable automatic submission. You can set autocommit=1 to enable automatic submission.

6. About PHP printing date

<?php
echo date(&#39;Y-m-d H:i:s&#39;,strtotime(&#39;-1day&#39;));//前一天
echo‘<br>’;
echo date('Y-m-d H:i:s',strtotime('-1week'));//前一周
echo'<br>';
echo date('Y-m-d H:i:s');//现在的时间
echo'<br>'
echo date('Y-m-d H:i:s',strtotime('next Monday'));//下一个星期一
echo'<br>';
echo date('Y-m-d H:i:s',strtotime('last Monday'));//上一个星期一
echo "现在的时间是:".date(h:i:s a);//a-小写的上午和午后(am 或pm)
?>

Calculation of time difference

<?php
$startdate =strtotime("2012-01-01");
$enddate=strtotime("2012-02-04");
$days=round(($enddate-$startdate)/86400)+1;
echo $days;
?>

6. Templates that can separate HTML and PHP

smarty, phptal, template, PHPlib Template, FastTemplate

related Recommended:

PHP interview questions algorithm questions

8 PHP interview questions reflect your understanding of PHP

php Summary of written test questions in interview questions

The above is the detailed content of Summary of PHP simple 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