This article shows top 35 frequently asked PHP interview questions and answers for 5 years experienced PHP Developer, This list of PHP interview questions and answers will be helpful for PHP 5 experienced developer.
Question #1 - How array_walk function works in PHP?
Question #2 - What is the difference between $message and $$message?
Question #4 - How to get 2nd highest salary of employee, if two employee may have same salary?
Question #5 - require_once(), require(), include().What is difference between them?
Question #7 - How do you call a constructor for a parent class?
Question #14 - How to set header in CURL?
Question #17 - What are benefits of .htaccess?
It is used to update the elements/index of original array.
How: in array_walk, two parameter are required.
- original array
- An callback function, with use of we update the array.
They are both variables But $message is a variable with a fixed name. $$message is a variable whose name is stored in $message. For example, if $message contains "var", $$message is the same as $var.
Question #3 - How to achieve Multilevel inheritance in PHP?//base class class a{} //parent class extend the base class class bextends a{} //chid class extend the parent class class c extends b{}
select salary from employee group by salary order by salary limit 1,1
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.
Question #6 - What type of inheritance supports by PHP?
There are following type of inheritance
- Single Inheritance - Support by PHP
- Multiple Inheritance - Not support
- Hierarchical Inheritance - Support by PHP
- Multilevel Inheritance - Support by PHP
parent::constructor($value);Question #8 - How to find duplicate email records in users table?
SELECT u1.first_name, u1.last_name, u1.email FROM users as u1 INNER JOIN ( SELECT email FROM users GROUP BY email HAVING count(id) > 1 ) u2 ON u1.email = u2.email;
Question #9 - What are default session time and path?
Session Time: 1440 seconds
Session Path: /tmp folder in server
Session Path: /tmp folder in server
Question #10 - What is the difference between Session and Cookie?
Both are used to store user information on server. The main difference between sessions and cookies is that sessions are stored on the server, and cookies are stored on the user's computers in the text file format. Cookies can't hold multiple variable while session can hold multiple variables..We can set expiry for a cookie,The session only remains active as long as the browser is open.Users do not have access to the data you stored in Session,Since it is stored in the server.Session is mainly used for login/logout purpose while cookies using for user activity tracking
Question #11 - How to pass data in header while using CURL?
$url='http://www.web-technology-experts-notes.in'; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 0); curl_setopt($ch, CURLOPT_HTTPHEADER, array( 'headerKey: HeaderValue ', 'Content-Type: application/json', "HTTP_X_FORWARDED_FOR: xxx.xxx.x.xx" )); echo curl_exec($ch); curl_close($ch);
Question #12 - What is Final Keyword in PHP?
PHP introduces the final keyword, which prevents child classes from overriding a method by prefixing the definition with final keyword.
Question #13 - How can we prevent SQL-injection in PHP?
Sanitize the user data before Storing in database.
While displaying the data in browser Convert all applicable characters to HTML entities using htmlentities functions.
curl_setopt($ch, CURLOPT_HTTPHEADER, Array("Content-Type: text/xml"));
Question #15 - What are different type of sorting functions in PHP?
sort() - sort arrays in ascending order.
asort() - sort associative arrays in ascending order, according to the value.
ksort() - sort associative arrays in ascending order, according to the key.
arsort() - sort associative arrays in descending order, according to the value.
rsort() - sort arrays in descending order.
krsort() - sort associative arrays in descending order, according to the key.
array_multisort() - sort the multi dimension array.
usort()- Sort the array using user defined function.
Question #16 - How to redirect https to http URL and vice versa in .htaccess?asort() - sort associative arrays in ascending order, according to the value.
ksort() - sort associative arrays in ascending order, according to the key.
arsort() - sort associative arrays in descending order, according to the value.
rsort() - sort arrays in descending order.
krsort() - sort associative arrays in descending order, according to the key.
array_multisort() - sort the multi dimension array.
usort()- Sort the array using user defined function.
Redirect https to http
Redirect http to httpsRewriteEngine On RewriteCond %{HTTPS} on RewriteRule (.*) http://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
RewriteEngine on RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]
Question #17 - What are benefits of .htaccess?
- Routing the URL
- Mange Error Pages for Better SEO
- Redirection pages
- Detect OS (like Mobile/Laptop/Ios/Android etc)
- Set PHP Config variable
- Set Environment variable
- Allow/Deny visitors by IP Address
- Password protection for File/Directory
- Optimize Performance of website
- Improve Site Security
Question #18 - How we can retrieve the data in the result set of MySQL using PHP?
Question #19 - What is the use of explode() function ?
Output
Question #26 - What are Traits?
Question #30 - How to repair the session?
Read more about the best programming laptop
Question #31 - What is stdClass?
OR
Add following code in .htacess
Question #34 - What are different type of errors?
Example of use of SELF
- mysql_fetch_row()
- mysql_fetch_array()
- mysql_fetch_object()
- mysql_fetch_assoc()
Question #19 - What is the use of explode() function ?
This function is used to split a string into an array. Syntax : array explode( string $delimiter , string $string [, int $limit ] );
Question #20 - What is the difference between explode() and split() functions?
Split function splits string into array by regular expression. Explode splits a string into array by string.
Both function are used to breaks a string into an array, the difference is that Split() function breaks split string into an array by regular expression and explode() splits a string into an array by string. explode() is faster than split() because it does not match the string based on regular expression.
Question #21 - What is the use of mysql_real_escape_string() function?
mysql_real_escape_string() function mainly used to escapes special characters in a string for use in an SQL statement
Question #22 - Write down the code for save an uploaded file in php.if ($_FILES["file"]["error"] == 0)Question #23 - How to create a text file in php?
{
move_uploaded_file($_FILES["file"]["tmp_name"],
"upload/" . $_FILES["file"]["name"]);
echo "Stored in: " . "upload/" . $_FILES["file"]["name"];
}
$filename = "/home/user/guest/newfile.txt";Question #24 - How to strip whitespace (or other characters) from the beginning and end of a string ?
$file = fopen( $filename, "w" );
if( $file == false )
{
echo ( "Error in opening new file" ); exit();
}
fwrite( $file, "This is a simple test\n" );
fclose( $file );
We can use trim() function to remove whitespaces or other predefined characters from both sides of a string.
Question #25 - What is output of following?$a = '10'; $b = &$a; $b = "2$b"; echo $a; echo $b;
Output
210 210
Traits are a mechanism that allows you to create reusable code in PHP where multiple inheritance is not supported. To create a Traits we use keyword trait.
Example of Traits
Question #27 - How to extend a class defined with Final?trait users { function getUserType() { } function getUserDescription() { } function getUserDelete() { } } class ezcReflectionMethod extends ReflectionMethod { use users; } class ezcReflectionFunction extends ReflectionFunction { use users; }
No, You can't extend. A class declare with final keyword can't be extend.
Question #28 - What is full form of PSRs?
PHP Standards Recommendations.
Question #29 - How do you execute a PHP script from the command line?- Get the php.exe path from server (My PHP path is : D:\wamp\bin\php\php5.5.12)
- In environment variable, Add this path path under PATH variable.
- Re-start the computer.
- Now, you can execute php files from command file.
php index.php
REPAIR TABLE tablename
REPAIR TABLE tablename QUICK
Read more about the best programming laptop
REPAIR TABLE tablename EXTENDED
It is PHP generic empty class.
stdClass is used to create the new Object. For Example
Output
stdClass is used to create the new Object. For Example
$newObj = new stdClass(); $newObj->name='What is your name?'; $newObj->description='Tell me about yourself?'; $newObj->areYouInIndia=1; print_r($newObj);
Output
stdClass Object ( [name] => What is your name? [description] => Tell me about yourself? [areYouInIndia] => 1 )
Question #32 - How to start displaying errors in PHP application ?
Add following code in PHP.
ini_set('display_errors', 1); ini_set('display_startup_errors', 1); error_reporting(E_ALL);
OR
Add following code in .htacess
php_flag display_startup_errors on php_flag display_errors on php_flag html_errors on php_flag log_errors on
Question #33 - What is Reference Transaction in Paypal?
In Reference transaction,
With use of first transaction done by customer, we can do mutiple transaction without need another approvel.
In this, we store the transaction_id(First transaction), and use this transaction_id as reference_id for net payments.
It has two methods.
1) DoDirect payment. (Accept the credit card by website)
2) Express Checkout. (website doesn't accept credit card in own website, customer pay on paypal.com)
Question #34 - What are different type of errors?
E_ERROR: A fatal error that causes script termination.
E_WARNING: Run-time warning that does not cause script termination.
E_PARSE: Compile time parse error.
E_NOTICE: Run time notice caused due to error in code.
E_CORE_ERROR: Fatal errors that occur during PHP's initial startup.
E_CORE_WARNING: Warnings that occur during PHP's initial startup.
E_COMPILE_ERROR: Fatal compile-time errors indication problem with script.
E_USER_ERROR: User-generated error message.
E_USER_WARNING: User-generated warning message.
E_USER_NOTICE: User-generated notice message.
E_STRICT: Run-time notices.
E_RECOVERABLE_ERROR: Catchable fatal error indicating a dangerous error
E_ALL: Catches all errors and warnings
E_WARNING: Run-time warning that does not cause script termination.
E_PARSE: Compile time parse error.
E_NOTICE: Run time notice caused due to error in code.
E_CORE_ERROR: Fatal errors that occur during PHP's initial startup.
E_CORE_WARNING: Warnings that occur during PHP's initial startup.
E_COMPILE_ERROR: Fatal compile-time errors indication problem with script.
E_USER_ERROR: User-generated error message.
E_USER_WARNING: User-generated warning message.
E_USER_NOTICE: User-generated notice message.
E_STRICT: Run-time notices.
E_RECOVERABLE_ERROR: Catchable fatal error indicating a dangerous error
E_ALL: Catches all errors and warnings
Question #35 - When to use self over $this?
Use $this to refer to the current object.
Use self to refer to the current class.
Example of use of $this
class MyClass1 { private $nonStaticMember = 'nonStaticMember member Called.'; public function funcName() { return $this->nonStaticMember; } } $classObj = new MyClass1(); echo $classObj->funcName();//nonStaticMember member Called.
class MyClass2 { private static $staticMember = 'staticMember member Called.'; public function funcName() { return $this::$staticMember; } } $classObj = new MyClass2(); echo $classObj->funcName(); //staticMember member Called.
Note: Only a member of this blog may post a comment.