PHP Interview Questions

PHP Interview Questions

What is PHP?

PHP is a server side scripting language commonly used for web applications

How to include a file to a PHP page?

we can include a file using “include() ” or “require()” function with as its parameter.

What’s the difference between include and require?

If the file is not found by require(), it will cause a fatal error and halt the execution of the script. If the file is not found by include(), a warning will be issued, but execution will continue.

require_once(), require(), include().What is difference between them?

require() includes and evaluates a specific file, while require_once() does that only if it has not been included before (on the same page). So, require_once() is recommended to use when you want to include a file where you have a lot of functions for example. This way you make sure you don’t include the file more times and you will not get the “function re-declared” error.

How do you define a constant?

Using define() directive, like define (“MYCONSTANT”,150)

What Is a Session?

It can be used to store information on the server for future use

How to set cookies in PHP?

Cookies are often used to track user information Syntax: Setcookie(name, value, expire, path, domain); eg:Setcookie(“sample”, “ram”, time()+3600);

Difference between mysql_connect and mysql_pconnect?

There is a good page in the php manual on the subject, in short mysql_pconnect() makes a persistent connection to the database which means a SQL link that do not close when the execution of your script ends. mysql_connect()provides only for the databasenewconnection while using mysql_pconnect , the function would first try to find a (persistent) link that’s already open with the same host, username and password. If one is found, an identifier for it will be returned instead of opening a new connection… the connection to the SQL server will not be closed when the execution of the script ends. Instead, the link will remain open for future use.

How to create a mysql connection?


What is the use of mysql_fetch_array () function in PHP ?

This function returns a row from the table as an associative array or numeric array.

What is the use of the function ” explode () ” in PHP?

This function is used to split a string by special character or symbol in the string, we must be pass the string and splitting character as parameter into the function.

What is the use of in_array () function in PHP ?

in_array used to checks if a value exists in an array

How to retrieve the data from a MySQL result set ?

using the methods given below 1. mysql_fetch_row. 2. mysql_fetch_array 3. mysql_fetch_object 4. mysql_fetch_assoc

Differences between GET and POST methods ?

We can send 1024 bytes using GET method but POST method can transfer large amount of data and POST is the secure method than GET method .

What is SSL ?

SSL stands for Secure Sockets Layer. This is a cryptographic protocols which provide secure communications on the Internet

How to calculate the sum of values in an array ?

“array_sum” method used for calculating the sum of values in an array

What is the use of “ksort” in PHP?

It is used to sort an array by key in reverse order.

What is the difference between strstr & stristr?
For strstr, the syntax is: string strstr(string $string,string $str ); The function strstr will search $str in $string. If
it finds the string means it will return string from where it finds the $str upto end of $string.
For Example:
$string = “”;
The output is “”. The main difference between strstr and stristr is of case sensitivity. The
former consider the case difference and later ignore the case difference.

What is the difference between explode and split?
Split function splits string into array by regular expression. Explode splits a string into array by string.
For Example:
explode(” and”, “India and Pakistan and Srilanka”);
split(” :”, “India : Pakistan : Srilanka”);
Both of these functions will return an array that contains India, Pakistan, and Srilanka.

How can you avoid execution time out error while fetching record from MySQL?
set_time_limit — Limits the maximum execution time
For Example:
If you set to 0 you say that there is not limit

Write a SQL query that displays the difference between the highest and lowest salaries of a database table
employees“. Label the column as DIFFERENCE.
Select max(sal)-min(sal) as Difference from employees;

What is the difference between require() and include()?
Both of these constructs includes and evaluates the specific file. The two functions are identical in every way
except how they handle failure. If filepath not found, require() terminates the program and gives fatal error,
but include() does not terminate the program; It gives warning message and continues to program.
include() produces a Warning while require() results in a Fatal Error if the filepath is not correct.

What is the difference between echo and print?
Main difference between echo() and print() is that echo is just an statement not a function and doesn’t return’s
value or it just prints a value whereas print() is an function which prints a value and also it returns value.
We cannot pass arguments to echo since it is just a statement whereas print is a function and we can pass
arguments to it and it returns true or false. print can be used as part of a more complex expression whereas
echo cannot. echo is marginally faster since it doesn’t set a return value.


An examiner awards the highest mark 75 and the lowest mark 25, the pass marks being 40. The moderator wants to change the highest mark to 250 and the lowest marks to 100 using the linear formula
y=ax+b. The revised pass marks will be:
A. 145
B. 150
C. 160
D. 400/3
Give the correct option.
Solve it get and b and then put
Answer: 145

A and B are shooters and having their exam. A and B fall short of 10 and 2 shots respectively to the ualifying mark. If each of them fired at least one shot and even by adding their total score together, they fall  short of the qualifying mark, what is the qualifying mark?
Answer: 11
As A is short by 10 – he has shot 1
As B is short by 2 – he has shot 9
9+1=10 and 10 < 11

In objective test a correct answer score 4 marks and on a wrong answer 2 marks. A student scores 480 marks from 150 questions. How many answers were correct?
A. 120
B. 130
C. 110
D. 150
Answer: B i.e. 130
Then X is 130 so 130 is correct answer.

What’s the difference between COPY OF A FILE & MOVE_UPLOAD_FILE in file uploading?
Move: This function checks to ensure that the file designated by filename is a valid upload file (meaning that it was uploaded via PHP’s HTTP POST upload mechanism). If the file is valid, it will be moved to the filename given by destination. If filename is not a valid upload file, then no action will occur, and move_uploaded_file() will return FALSE.
Copy: Makes a copy of a file. Returns TRUE if the copy succeeded, FALSE otherwise.

How do you insert single & double quotes in MySQL db without using PHP?
&amp; / &quote;
Alternately, escape single quote using forward slash \’ . In double quote you don’t need to escape quotes.
Insert double quotes as “”.

What do you need to do to improve the performance (speedy execution) for the script you have written?
If your script is to retrieve data from Database, you should use “Limit” syntax. Break down the non dynamic sections of website which need not be repeated over a period of time as include files.

 How do you capture audio/video in PHP?
You need a module installed – FFMPEG. FFmpeg is a complete solution to record, convert and stream audio and video. It includes libavcodec, the leading audio/video codec library. FFmpeg is developed under Linux, but it can be compiled under most operating systems, including Windows.

How do you know (status) whether the recipient of your mail had opened the mail i.e. read the mail?
Embed an URL in a say 0-byte image tag may be the better way to go. In other word, you embed an invisible image on you html email and when the src URL is being rendered by the server, you can track whether your recipients have view the emails or not.

What is random number?
A random number is a number generated by a process, whose outcome is unpredictable, and which cannot be sub sequentially reliably reproduced.

What is difference between srand & shuffle?
The srand function seeds the random number generator with seed and shuffle is used for shuffling the array values.
shuffle – This function shuffles (randomizes the order of the elements in) an array. This function assigns new keys for the elements in array. It will remove any existing keys you may have assigned, rather than just reordering the keys.
srand – Seed the random number generator

How can we remove duplicate values from an array?
array_unique() funciton can be used for the purpose.

How do I find out weather a number is odd or even?
if (number%2==0 ) then even else odd.

How can we get the ID generated from the previous insert operation?
SELECT MAX(ID) from tablename;

How to limit the number of rows to 5 that I get out of my database?
Select * from tablename LIMIT 0, 5;

How to store binary data in MySQL?
Use BLOB data type for the database field.

How can we submit a form without a submit button?
We can submit a form using the JavaScript. Example: document.formname.submit();

What is difference between mysql_fetch_array(), mysql_fetch_row() and mysql_fetch_object()?
mysql_fetch_array – Fetch the all matching records of results.
mysql_fetch_object – Fetch the first single matching record of results.
mysql_fetch_row – fetches a result row as array.

How to make a download page in own site, where I can know that how many file has been loaded by particular user or particular IP address?
We can log the IP addresses in one database table while downloading the file. This way we can count and check the no. of rows inserted for a particular download.

What is difference between mysql_connect and mysql_pconnect?
mysql_connect opens up a database connection every time a page is loaded. mysql_pconnect opens up a connection, and keeps it open across multiple requests.
mysql_pconnect uses less resources, because it does not need to establish a database connection every time a page is loaded.

What is the difference between “Insert”, “Update” and “Modify” events?
INSERT – Add a new record into the database table.
MODIFY – If record is available it modifies otherwise it wont modify.
UPDATE – If record is available it updates the record otherwise it creates a new record.

How I can get IP address?

How do we know properties of the browser?
You can gather a lot of information about a person’s computer by using $_SERVER[‘HTTP_USER_AGENT’].
This can tell us more about the user’s operating system, as well as their browser. For example I am revealed to be Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en) AppleWebKit/418 (KHTML, like Gecko) Safari/417.9.3 when visiting a PHP page.
This can be useful to programmers if they are using special features that may not work for everyone, or if they want to get an idea of their target audience. This also is important when using the get_browser() function for finding out more information about the browser’s capabilities. By having this information the user can be directed to a version of your site best suited to their browser.get_browser() attempts to determine the capabilities of the user’s browser. This is done by looking up the browser’s information in the browscap.ini file.

echo $_SERVER[‘HTTP_USER_AGENT’] . “<hr />\n”;
$browser = get_browser();
foreach ($browser as $name => $value)
echo “<b>$name</b> $value <br />\n”;

What is difference between require_once(), require(), include(). Because all these function are used to call a file in another file.
Difference between require() and require_once(): require() includes and evaluates a specific file, while require_once() does that only if it has not been included before (on the same page).
So, require_once() is recommended to use when you want to include a file where you have a lot of functions for example. This way you make sure you don’t include the file more times and you will not get the “function re-declared” error.
Difference between require() and include() is that require() produces a FATAL ERROR if the file you want to include is not found, while include() only produces a WARNING.
There is also include_once() which is the same as include(), but the difference between them is the same as the difference between require() and require_once().

If you have to work with dates in the following format: “Tuesday, February 14, 2006 @ 10:39 am”, how can you convert them to another format that is easier to use?
The strtotime function can convert a string to a timestamp.
A timestamp can be converted to date format. So it is best to store the dates as timestamp in the database, and just output them in the format you like.
So let’s say we have $date = “Tuesday, February 14, 2006 @ 10:39 am”;
In order to convert that to a timestamp, we need to get rid of the “@” sign, and we can use the remaining string as a parameter for the strtotime function.
So we have
$date = str_replace(“@ “,””,$date);
$date = strtotime($date);
Now $date is a timestamp and we can say:
echo date(“d M Y”,$date);

What is CAPTCHA?
CAPTCHA stands for Completely Automated Public Turing Test to tell Computers and Humans Apart. To prevent spammers from using bots to automatically fill out forms, CAPTCHA programmers will generate an image containing distorted images of a string of numbers and letters. Computers cannot determine what the numbers and letters are from the image but humans have great pattern recognition abilities and will be able to fairly accurately determine the string of numbers and letters. By entering the numbers and letters from the image in the validation field, the application can be fairly assured that there is a human client using it.

What is the difference between $x and $$x ?
$x is simple variable. $$x is reference variable or infact a variable of variable. A variable variable allows us to change the name of a variable dynamically.
$x = “this”;
$$x = “is cake”;
The $$ is the syntax used in PHP for a variable variable. I can now call the two variables $x and $$x two
echo “$x ${$x}”;
echo “$x $this”;
Both of these will return the string “this is cake”. Notice that $$x is written as ${$x} in echo. This lets PHP know that you are using the variable $$x and not $ and $x

What is meant by nl2br()?
New line (\n) to Break tag (<BR>) conversion.

How can we encrypt and decrypt a data present in a MySQL table using MySQL?
AES_ENCRYPT(str,key_str) , AES_DECRYPT(crypt_str,key_str)

What is meant by urlencode() and urldecode()?
string urlencode(str)
When str contains a string like this “hello world” and the return value will be URL encoded and can be use to append with URLs, normally used to append data for GET like
string urldocode(str)
This will simple decode the GET variable’s value. Example: echo (urldecode($_GET_VARS[var])) will output “hello world”

What is the difference between the functions unlink and unset?
unlink is a function for file system handling. It will simply delete the file in context. unset will set UNSET the specified variable.
unlink is used to delete a file. unset is used to destroy an earlier declared variable.

What are the different types of errors in PHP?
1. Notices: These are trivial, non-critical errors that PHP encounters while executing a script – for example, accessing a variable that has not yet been defined. By default, such errors are not displayed to the user at all
although you can change this default behavior.
2. Warnings: These are more serious errors – for example, attempting to include() a file which does not exist.
By default, these errors are displayed to the user, but they do not result in script termination.
3. Fatal errors: These are critical errors – for example, instantiating an object of a non-existent class, or calling a non-existent function. These errors cause the immediate termination of the script, and PHP’s default behavior is to display them to the user when they take place.

How can we create a session variable & terminate it?
$_SESSION[’name’] = “Chinmay”;
To destroy a session: unset($_SESSION[’name’]);

How to Create a Cookie & destroy it in PHP?
variable – name of the cookie variable
variable – value of the cookie variable
time – expiry time
Example: setcookie(”test”,$i,time()+3600);
Test – cookie variable name
$i – value of the variable ‘Test’
time()+3600 – denotes that the cookie will expire after an one hour.
Destroy a cookie by specifying expiry time
Example: setcookie(”test”,$i,time()-3600); // already expired time
Reset a cookie by specifying its name only

What is the difference between sizeof($array) and count($array)?
sizeof($array) – This function is an alias of count()
count($array) – If you just pass a simple variable instead of an array it will return 1.

Be the first to comment “PHP Interview Questions”

Time limit is exhausted. Please reload CAPTCHA.