PHP Interview Questions
There is given PHP interview questions and answers that have been asked in many companies. Let’s see the list of top PHP interview questions.
1) What is PHP?
PHP stands for Hypertext Preprocessor. It is an open-source server-side scripting language that is widely used for web development. It supports many databases like MySQL, Oracle, Sybase, Solid, PostgreSQL, Generic ODBC
2) What is PEAR in PHP?
PEAR is a framework and repository for reusable PHP components. PEAR stands for PHP Extension and Application Repository. It contains all types of PHP code snippets and libraries. It also provides a command-line interface to install “packages” automatically.
3) Who is known as the father of PHP?
4) What was the old name of PHP?
The old name of PHP was the Personal Home Page.
5) Explain the difference b/w static and dynamic websites?
In static websites, content can’t be changed after running the script. You can’t change anything on the site. It is predefined.
In dynamic websites, the content of the script can be changed at the run time. Its content is regenerated every time a user visits or reload. Google, yahoo, and every search engine is an example of a dynamic website.
6) What is the name of the scripting engine in PHP?
The scripting engine that powers PHP is called Zend Engine 2.
7) Explain the difference between PHP4 and PHP5.
PHP4 doesn’t support the oops concept and uses Zend Engine 1.
PHP5 supports the oops concept and uses Zend Engine 2.
8) What are the popular Content Management Systems (CMS) in PHP?
- WordPress: WordPress is a free and open-source content management system (CMS) based on PHP & MySQL. It includes a plug-in architecture and template system. It is mostly connected with blogging but supports another kind of web content, containing more traditional mailing lists and forums, media displays, and online stores.
- Joomla: Joomla is a free and open-source content management system (CMS) for distributing web content, created by Open Source Matters, Inc. It is based on a model-view-controller web application framework that can be used independently of the CMS.
- Magento: Magento is an open-source E-trade programming, made by Varien Inc., which is valuable for online business. It has a flexible measured design and is versatile with many control alternatives that are useful for clients. Magento utilizes the E-trade stage which offers the organization extreme E-business arrangements and an extensive support network.
- Drupal: Drupal is a CMS platform developed in PHP and distributed under the GNU (General Public License).
9) What are the popular frameworks in PHP?
- Yii 2
- Zend Framework etc.
10) Which programming language does PHP resemble to?
PHP has borrowed its syntax from Perl and C.
11) List some of the features of PHP7.
- Scalar type declarations
- Return type declarations
- Null coalescing operator (??)
- Spaceship operator
- Constant arrays using define()
- Anonymous classes
- Closure::call method
- Group use declaration
- Generator return expressions
- Generator delegation
- Space ship operator
12) What is “echo” in PHP?
PHP echo output one or more strings. It is a language construct not a function. So the use of parentheses is not required. But if you want to pass more than one parameter to echo, the use of parentheses is required.
Syntax: void echo ( string $arg1 [, string $… ] )
13) What is “print” in PHP?
PHP print output a string. It is a language construct not a function. So the use of parentheses is not required with the argument list. Unlike echo, it always returns 1.
Syntax: int print ( string $arg)
14) What is the difference between “echo” and “print” in PHP?
Echo can output one or more string but print can only output one string and always returns 1.
Echo is faster than print because it does not return any value.
15) How a variable is declared in PHP?
A PHP variable is the name of the memory location that holds data. It is a temporary storage.
16) What is the difference between $message and $$message?
$message stores variable data while $$message is used to store variables of variables.
$message stores fixed data whereas the data stored in $$message may be changed dynamically
17) What are the ways to define a constant in PHP?
PHP constants are names or identifiers that can’t be changed during the execution of the script. PHP constants are defined in two ways:
- Using define() function
- Using const() function
18) What are magic constants in PHP?
PHP magic constants are predefined constants, which change based on their use. They start with a double underscore (__) and end with a double underscore (__).
19) How many data types are there in PHP?
PHP data types are used to hold different types of data or values. There are 8 primitive data types which are further categorized into 3 types:
- Scalar types
- Compound types
- Special types
20) How to do single and multi-line comments in PHP?
PHP single line comment is made in two ways:
- Using // (C++ style single line comment)
- Using # (Unix Shell-style single line comment)
PHP multi-line comment is made by enclosing all lines within.
21) What are the different loops in PHP?
For, while do-while and for each.
22) What is the use of the count() function in PHP?
The PHP count() function is used to count total elements in the array, or something an object.
23) What is the use of the header() function in PHP?
The header() function is used to send a raw HTTP header to a client. It must be called before sending the actual output. For example, you can’t print any HTML element before using this function.
24) What does isset() function?
The isset() function checks if the variable is defined and not null.
25) Explain PHP parameterized functions.
PHP parameterized functions are functions with parameters. You can pass any number of parameters inside a function. These given parameters act as variables inside your function. They are specified inside the parentheses, after the function name. Output depends upon dynamic values passed as parameters into the function.
26) Explain PHP variable-length argument function
PHP supports variable-length argument function. It means you can pass 0, 1, or n number of arguments in a function. To do this, you need to use 3 ellipses (dots) before the argument name. The 3 dot concept is implemented for variable-length argument since PHP 5.6
27) Explain the PHP variable-length argument function.
PHP supports variable-length argument function. It means you can pass 0, 1, or n number of arguments.
28) What is the array in PHP?
An array is used to store multiple values in a single value. In PHP, it orders maps of pairs of keys and values. It saves the collection of the data type.
29) How many types of an array are there in PHP?
There are three types of an array in PHP:
- Indexed array: an array with a numeric key.
- Associative array: an array where each key has its specific value.
- Multidimensional array: an array containing one or more arrays within itself.
30) Explain some of the PHP array functions?
There are many array functions in PHP:
31) What is the difference between indexed and associative array?
The indexed array holds elements in an indexed form which is represented by number starting from 0 and incremented by 1. For example: $season=array(“summer”,“winter”,“spring”,“autumn”);
The associative array holds elements with name. For example:
32) How to get the length of string?
The strlen() function is used to get the length of the string.
33) Explain some of the PHP string functions?
There are many array functions in PHP:
34) What are the methods to submit form in PHP?
There are two methods GET and POST.
35) How can you submit a form without a submit button?
36) What are the ways to include files in PHP?
PHP allows you to include files so that page content can be reused again. There are two ways to add the file in PHP.
37) Differentiate between require and include?
Require and include both are used to include a file, but if data is not found include sends warning whereas require sends Fatal error.
38) Explain setcookie() function in PHP?
PHP setcookie() function is used to set cookie with HTTP response. Once the cookie is set, you can access it by $_COOKIE superglobal variable.
bool setcookie ( string $name [, string $value [, int $expire = 0 [, string $path [, string $domain [, bool $secure = false [, bool $httponly = false ]]]]]] )
39) How can you retrieve a cookie value?
40) What is a session?
PHP Engine creates a logical object to preserve data across subsequent HTTP requests, which is known as session.
Sessions generally store temporary data to allow multiple PHP pages to offer a complete functional transaction for the same user. Simply, it maintains the data of a user (browser).
41) What is the method to register a variable into a session?
42) What is $_SESSION in PHP?
A session creates a file in a temporary directory on the server where registered session variables and their session id are stored. This data will be available to all pages on the site amid that visit.
The area of the temporary record is controlled by a setting in the php.ini document called the session.save_path.
At the point when a session is begun the following things happen –
- PHP first makes two duplicates of one of a kind session id for that particular session of the client which is an arbitrary string of 32 hexadecimal numbers, for example, 3c7foj34c3jjhkyepop2fc937e3443.
- One copy of a unique session-id automatically sent to the user’s computer for the sake of synchronization in the future ahead, and one copy is being maintained at the server-side till the session is running.
- Whenever you want to access the page of the website or web app, then the session id of the current user will be associated with the HTTP header, and that will be compared by the session id which is being maintained at the server. After completing the comparison process, you can easily access the page of the website or web app
- A session ends when the user closes the browser, or after leaving the site, the server will terminate the session after a predetermined period, commonly 30 minutes duration.
43) What is PHP session_start() and session_destroy() function?
PHP session_start() function is used to start the session. It starts new or resumes the current session. It returns the current session if the session is created already. If the session is not available, it creates and returns new sessions.
44) What is the difference between session and cookie?
The main difference between session and cookie is that cookies are stored on the user’s computer in the text file format while sessions are stored on the server-side. Cookies can’t hold multiple variables, on the other hand, Session can hold multiple variables. You can manually set an expiry for a cookie, while the session only remains active as long as the browser is open.
45) Write syntax to open a file in PHP?
PHP fopen() function is used to open file or URL and returns resource. It accepts two arguments: $filename and $mode.
Syntax: resource fopen ( string $filename , string $mode [, bool $use_include_path = false [, resource $context ]] )
46) How to read a file in PHP?
PHP provides various functions to read data from the file. Different functions allow you to read all file data, read data line by line, and read data character by character.
PHP file read functions are given below:
47) How to write in a file in PHP?
PHP fwrite() and fputs() functions are used to write data into file. To write data into a file, you need to use w, r+, w+, x, x+, c, or c+ mode.
48) How to delete files in PHP?
The unlink() function is used to delete a file in PHP.
bool unlink (string $filename)
49) What is the method to execute a PHP script from the command line?
You should just run the PHP command-line interface (CLI) and specify the file name of the script to be executed as follows.
50) How to upload file in PHP?
The move_uploaded_file() function is used to upload file in PHP.
51) How to download file in PHP?
The readfile() function is used to download the file in PHP.
52) How can you send email in PHP?
The mail() function is used to send email in PHP.
53) How do you connect the MySQL database with PHP?
There are two methods to connect MySQL database with PHP. Procedural and object-oriented style.
54) How to create a connection in PHP?
The mysqli_connect() function is used to create a connection in PHP.
55) How to create a database connection and query in PHP?
Since PHP 4.3, mysql_reate_db() is deprecated. Now you can use the following 2 alternatives.
56) How can we increase the execution time of a PHP script?
By default, the maximum execution time for PHP scripts is set to 30 seconds. If a script takes more than 30 seconds, PHP stops the script and returns an error.
You can change the script run time by changing the max_execution_time directive in the php.ini file.
When a script is called, the set_time_limit function restarts the timeout counter from zero. It means, if the default timer is set to 30 sec, and 20 sec is specified in function set_time_limit(), then the script will run for 45 seconds. If 0sec is specified in this function, the script takes unlimited time.
57) What are the different types of errors in PHP?
There are 3 types of error in PHP.
- Notices: These are non-critical errors. These errors are not displayed to the users.
- Warnings: These are more serious errors, but they do not result in script termination. By default, these errors are displayed to the user.
- Fatal Errors: These are the most critical errors. These errors may cause due to immediate termination of the script.
58) How to stop the execution of PHP script?
The exit() function is used to stop the execution of PHP script.
59) What are the encryption functions in PHP?
CRYPT() and MD5()
60) What is htaccess in PHP?
The .htaccess is a configuration file on Apache server. You can change configuration settings using directives in Apache configuration files like .htaccess and httpd.conf.
61) Explain PHP explode() function.
The PHP explode() function breaks a string into an array.
62) Explain PHP split() function.
The PHP split() function splits a string into an array by regular expression.
63) How can we get IP address of a client in PHP?
64) What is the meaning of a Persistent Cookie?
A persistent cookie is permanently stored in a cookie file on the browser’s computer. By default, cookies are temporary and are erased if we close the browser.
65) What is the use of the function ‘imagetypes()’?
imagetypes() gives the image format and types supported by the current version of GD-PHP.
66) What are include() and require() functions?
The Include() function is used to put data of one PHP file into another PHP file. If errors occur, then the include() function produces a warning but does not stop the execution of the script, and it will continue to execute.
The Require() function is also used to put data of one PHP file to another PHP file. If there are any errors, then the require() function produces a warning and a fatal error and stops the script.
67) What is Cookies? How to create cookies in PHP?
A cookie is used to identify a user. A cookie is a little record that the server installs on the client’s Computer. Each time a similar PC asks for a page with a program, it will send the cookie as well. With PHP, you can both make and recover cookie value.
Some important points regarding Cookies:
- Cookies maintain the session-id generated at the back end after verifying the user’s identity in encrypted form, and it must reside in the browser of the machine
- You can store only string values not object because you can’t access any object across the website or web apps
- Scope: – Multiple pages.
- By default, cookies are temporary and transitory cookie saves in the browser only.
- By default, cookies are URL particular means Gmail isn’t supported in Yahoo and vice versa.
- Per site 20 cookies can be created in one website or web app
- The initial size of the cookie is 50 bytes.
- The Maximum size of the cookie is 4096 bytes.
68) What is the Importance of Parser in PHP?
PHP parser parses the PHP developed website from the opening to the closing tag. Tags indicate that from where PHP code is being started and ended. In other words, opening and closing tags decide the scope of PHP scripting syntax of closing tag in PHP
<?php syntax of opening tag in PHP
?> syntax of closing tag in PHP
69) How can we create a database using PHP and MySQL?
The necessary steps to create a MySQL database using PHP are:
- Establish a connection to MySQL server from your PHP script.
- If the connection is successful, write a SQL query to create a database and store it in a string variable.
- Execute the query.