Frequently Asked Questions
PHP: Interview Questions
1) What is PHP?
PHP is a web language based on scripts that allows developers to dynamically create generated web pages.
2) What does the initials of PHP stand for?
PHP means PHP: Hypertext Preprocessor.
3) Which programming language does PHP resemble to?
PHP syntax resembles Perl and C
4) What does PEAR stands for?
PEAR means “PHP Extension and Application Repository”. it extends PHP and provides a higher level of programming for web developers.
5) What is the actually used PHP version?
Version 5 is the actually used version of PHP.
6) How do you execute a PHP script from the command line?
Just use the PHP command line interface (CLI) and specify the file name of the script to be executed as follows

php script.php

7) How to run the interactive PHP shell from the command line interface?
Just use the PHP CLI program with the option -a as follows:

php –a

8) What are the correct and the most two common way to start and finish a PHP block of code?
The two most  common ways to start and finish a PHP script are:  and
9) How can we display the output directly to the browser?
To be able to display the output directly to the browser, we have to use the special tags .
10) What is the main difference between PHP 4 and PHP 5?
PHP 5 presents many additional OOP (Object Oriented Programming) features.
11) Is multiple inheritance supported in PHP?
PHP includes only single inheritance, it means that a class can be extended from only one single class using the keyword ‘extended’.
12) What is the meaning of a final class and a final method?
‘final’ is introduced in PHP5. Final class means that this class cannot be extended and a final method cannot be overrided.
13) How comparison of objects is done in PHP5?
We use the operator ‘==’ to test is two object are instanced from the same class and have same attributes and equal values. We can test if two object are refering to the same instance of the same class by the use of the identity operator ‘===’.
14) How can PHP and HTML interact?
It is possible to generate HTML through PHP scripts, and it is possible to pass informations from HTML to PHP.
15) What type of operation is needed when passing values through a form or an URL?
If we would like to pass values througn a form or an URL then we need to encode and to decode them using htmlspecialchars() and urlencode().
16) How can PHP and Javascript interact?
PHP and Javascript cannot directly interacts since PHP is a server side language and Javascript is a client side language. However we can exchange variables since PHP is able to generate Javascript code to be executed by the browser and it is possible to pass specific variables back to PHP via the URL.
17) What is needed to be able to use image function?
GD library is needed to be able execute image functions.
18) What is the use of the function ‘imagetypes()’?
imagetypes() gives the image format and types supported by the current version of GD-PHP.
19) What are the functions to be used to get the image’s properties (size, width and height)?
The functions are getimagesize() for size, imagesx() for width and imagesy() for height.
20) How failures in execution are handled with include() and require() functions?
If the function require() cannot access to the file then it ends with a fatal error. However, the include() function gives a warning and the PHP script continues to execute.
21) What is the main difference between require() and require_once()?
require() and require_once() perform the same task except that the second function checks if the PHP script is already included or not before executing it.
(same for include_once() and include())
22) How can I display text with a PHP script?
Two methods are possible:

23) How can we display information of a variable and readable by human with PHP?
To be able to display a human-readable result we use print_r().
24) How is it possible to set an infinite execution time for PHP script?
The set_time_limit(0) added at the beginning of a script sets to infinite the time of execution to not have the PHP error ‘maximum execution time exceeded’.It is also possible to specify this in the php.ini file.
25) What does the PHP error ‘Parse error in PHP – unexpected T_variable at line x’ means?
This is a PHP syntax error expressing that a mistake at the line x stops parsing and executing the program.
26) What should we do to be able to export data into an Excel file?
The most common and used way is to get data into a format supported by Excel. For example, it is possible to write a .csv file, to choose for example comma as separator between fields and then to open the file with Excel.
27) What is the function file_get_contents() usefull for?
file_get_contents() lets reading a file and storing it in a string variable.
28) How can we connect to a MySQL database from a PHP script?
To be able to connect to a MySQL database, we must use mysql_connect() function as follows:

29) What is the function mysql_pconnect() usefull for?
mysql_pconnect() ensure a persistent connection to the database, it means that the connection do not close when the the PHP script ends.
30) How the result set of Mysql be handled in PHP?
The result set can be handled using mysql_fetch_array, mysql_fetch_assoc, mysql_fetch_object or mysql_fetch_row.
31) How is it possible to know the number of rows returned in result set?
The function mysql_num_rows() returns the number of rows in a result set.
32) Which function gives us the number of affected entries by a query?
mysql_affected_rows() return the number of entries affected by an SQL query.
33) What is the difference between mysql_fetch_object() and mysql_fetch_array()?
The mysql_fetch_object() function collects the first single matching record where mysql_fetch_array() collects all matching records from the table in an array.
34) How can we access the data sent through the URL with the GET method?
In order to access the data sent via the GET method, we you use $_GET array like this:
$variable = $_GET[“var”]; this will now contain ‘value’
35) How can we access the data sent through the URL with the POST method?
To access the data sent this way, you use the $_POST array.
Imagine you have a form field called ‘var’ on the form, when the user clicks submit to the post form, you can then access the value like this:
36) How can we check the value of a given variable is a number?
It is possible to use the dedicated function, is_numeric() to check whether it is a number or not.
37) How can we check the value of a given variable is alphanumeric?
It is possible to use the dedicated function, ctype_alnum to check whether it is an alphanumeric value or not.
38) How do I check if a given variable is empty?
If we want to check whether a variable has a value or not, it is possible to use the empty() function.
39) What does the unlink() function means?
The unlink() function is dedicated for file system handling. It simply deletes the file given as entry.
40) What does the unset() function means?
The unset() function is dedicated for variable management. It will make a variable undefined.
41) How do I escape data before storing it into the database?
addslashes function enables us to escape data before storage into the database.
42) How is it possible to remove escape characters from a string?
The stripslashes function enables us to remove the escape characters before apostrophes in a string.
43) How can we automatically escape incoming data?
We have to enable the Magic quotes entry in the configuration file of PHP.
44) What does the function get_magic_quotes_gpc() means?
The function get_magic_quotes_gpc() tells us whether the magic quotes is switched on or no.
45) Is it possible to remove the HTML tags from data?
The strip_tags() function enables us to clean a string from the HTML tags.
46) what is the static variable in function useful for?
A static variable is defined within a function only the first time and its value can be modified during function calls as follows:


47) How can we define a variable accessible in functions of a PHP script?
This feature is possible using the global keyword.
48) How is it possible to return a value from a function?
A function returns a value using the instruction ‘return $value;’.
49) What is the most convenient hashing method to be used to hash passwords?
It is preferable to use crypt() which natively supports several hashing algorithms or the function hash() which supports more variants than crypt() rather than using the common hashing algorithms such as md5, sha1 or sha256 because they are conceived to be fast. hence, hashing passwords with these algorithms can vulnerability.
50) Which cryptographic extension provide generation and verification of digital signatures?
The PHP-openssl extension provides several cryptographic operations including generation and verification of digital signatures.
51) How a constant is defined in a PHP script?
The define() directive lets us defining a constant as follows:
define (“ACONSTANT”, 123);
52) How can you pass a variable by reference?
To be able to pass a variable by reference, we use an ampersand in front of it, as follows $var1 = &$var2
53) Will a comparison of an integer 12 and a string “13” work in PHP?
“13” and 12 can be compared in PHP since it casts everything to the integer type.
54) How is it possible to cast types in PHP?
The name of the output type have to be specified in parentheses before the variable which is to be cast as follows:
* (int), (integer) – cast to integer
* (bool), (boolean) – cast to boolean
* (float), (double), (real) – cast to float
* (string) – cast to string
* (array) – cast to array
* (object) – cast to object
55) When a conditional statement is ended with an endif?
When the original if was followed by : and then the code block without braces.
56) How is the ternary conditional operator used in PHP?
It is composed of three expressions: a condition, and two operands describing what instruction should be performed when the specified condition is true or false as follows:
Expression_1 ? Expression_2 : Expression_3;
57) What is the function func_num_args() used for?
The function func_num_args() is used to give the number of parameters passed into a function.
58) If the variable $var1 is set to 10 and the $var2 is set to the character var1, what’s the value of $$var2?
$$var2 contains the value 10.
59) What does accessing a class via :: means?
:: is used to access static methods that do not require object initialization.
60) In PHP, objects are they passed by value or by reference?
In PHP, objects passed by value.