2018 Latest PHP Interview Questions And Answers

2018 Latest PHP Interview Questions And Answers

1. What is PHP?

Answer: PHP is a web language based on scripts that allows developers to
dynamically create generated web pages. (2018 Latest PHP Interview Questions And Answers)

PHP is a server side scripting language commonly used for web applications. PHP
has many frameworks and cms for creating websites.Even a non technical person
can cretae sites using its CMS.WordPress,osCommerce are the famus CMS of
php.It is also an object oriented programming language like java,C-sharp etc.It is
very eazy for learning

2. What are the reasons for selecting lamp (Linux, apache, MySQL, PHP)
instead of combination of other software programs, servers and operating
systems?

Answer : All of those are open source resource. Security of Linux is very more than windows. Apache is a better server that IIS both in functionality and security. Mysql is world most popular open source database. Php is more faster that asp or any other scripting language.

3. What Is The Difference Between Group By And Order By In Sql?

Answer :

To sort a result, use an ORDER BY clause.
The most general way to satisfy a GROUP BY clause is to scan the whole table and create a new temporary table where all rows from each group are consecutive, and then use this temporary table to discover groups and apply aggregate functions (if any). ORDER BY [col1],[col2],…[coln]; Tells DBMS according to what columns it should sort the result. If two rows will have the same value in col1 it will try to sort them according to col2 and so on.

GROUP BY [col1],[col2],…[coln]; Tells DBMS to group (aggregate) results with same value of column col1. You can use COUNT(col1), SUM(col1), AVG(col1) with it, if you want to count all items in group, sum all values or view average.

4. How To Support Multiple-page Forms?

Answer :

If you have a long form with a lots of fields, you may want to divide the fields into multiple groups and present multiple pages with one group of fields on one page. This makes the a long form more user-friendly. However, this requires you to write good scripts that:
• When processing the first page and other middle pages, you must keep those input values collected so far in the session or as hidden values in the next page form.
• When processing the last page, you should collect all input values from all pages for final process, like saving everything to the database.

5. How to create an array of a group of items inside an HTML form ?

Answer: We can create input fields with same name for “name” attribute with squire bracket at the end of the name of the name attribute, It passes data as an array to PHP.
For instance :
Define Object-Oriented Methodology
Object orientation is a software programming methodology that is based on the modeling a real world system.An object is the core concept involved in the object orientation. An object is the copy of the real world enity.An object oriented model is a collection of objects and its inter-relationships

6. What is PEAR?

Answer: PEAR is a framework and distribution system for reusable PHP components.The project seeks to provide a structured library of code, maintain a system for distributing code and for managing code packages, and promote a standard coding style.PEAR is broken into three classes: PEAR Core Components, PEAR Packages, and PECL Packages. The Core Components include the base classes of PEAR and PEAR_Error, along with database, HTTP, logging, and e-mailing functions. The PEAR Packages include functionality providing for authentication, networking, and file system features, as well as tools for working with XML and HTML templates.

7. What Is The Difference Between Php4 And Php5?

Answer :

PHP4 cannot support oops concepts and Zend engine 1 is used.
PHP5 supports oops concepts and Zend engine 2 is used.
Error supporting is increased in PHP5.
XML and SQLLite will is increased in PHP5

8. What Are The Difference Between Abstract Class And Interface?

Answer : Abstract class: abstract classes are the class where one or moremethods
are abstract but not necessarily all method has to be abstract.
Abstract methods are the methods, which are declare in its class but not defined.
The definition of those methods must be in its extending class.
Interface: Interfaces are one type of class where all the methods are abstract. That
means all the methods only declared but not defined. All the methods must be
defined by its implemented class.

(2018 Latest PHP Interview Questions And Answers)

9. What is a session?

Answer: A session is a logical object created by the PHP engine to allow you to preserve data across subsequent HTTP requests.

There is only one session object available to your PHP scripts at any time. Data saved to the session by a script can be retrieved by the same script or another script when requested from the same visitor.

Sessions are commonly used to store temporary data to allow multiple PHP pages to offer a complete functional transaction for the same visitor.

10. What Are The Options To Transfer Session Ids?

Answer :Once a new session is created, its session ID must be transferred to the client browser and included in the next client request, so that the PHP engine can find the same session created by the same visitor. The PHP engine has two options to transfer the session ID to the client browser:

As URL parameter – The Session ID will be embedded in all URLs in the HTML document delivered to the client browser. When the visitor clicks any of those URLs, the session ID will be returned back to the Web server as part of the requesting URL.
As a cookie – The session ID will be delivered as a cookie to the client browser. When visitor requests any other pages on the Web server, the session ID will be returned back to the Web server also as a cookie.
The PHP engine is configured to use URL parameters for transferring session IDs by default

11. What Is A Result Set Object?

Answer :

A result set object is a logical representation of data rows returned by mysql_query() function on SELECT statements. Every result set object has an internal pointer used to identify the current row in the result set. Once you get a result set object, you can use the following functions to retrieve detail information:
• mysql_free_result($rs) – Closes this result set object.
• mysql_num_rows($rs) – Returns the number rows in the result set.
• mysql_num_fields($rs) – Returns the number fields in the result set.
• mysql_fetch_row($rs) – Returns an array contains the current row indexed by field position numbers.
• mysql_fetch_assoc($rs) – Returns an array contains the current row indexed by field names.
• mysql_fetch_array($rs) – Returns an array contains the current row with double indexes: field position numbers and filed names.
• mysql_fetch_lengths($rs) – Returns an array contains lengths of all fields in the last row returned.
• mysql_field_name($rs, $i) – Returns the name of the field of the specified index.

12. What are PHP sessions and how do they work?

Answer: What you’re really asking is whether they know how to use session_start(). It either creates or resumes a session based on an identifier that is sent to the server via a GET or POST request or a cookie. The most common use case scenario on the web is when a website won’t let you comment or post without first prompting a login. How does it know whether you’re logged in? One way would be to place a cookie in the user’s browser; on every request the cookie is sent server-side, where PHP can be used to determine which information is sent back and displayed to the client. While session_start() saves session data in files by default, it is also possible to store sessions directly in the database.

13. What is the difference between Session and Cookie?

Answer: 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
substring of string formed by splitting it on boundaries formed by the string delimiter. (Dot Net Training Online)

14. What are the different errors in PHP?

Answer:

In PHP, there are three types of runtime errors, they are:

Warnings:
These are important errors. Example: When we try to include () file which is not available. These errors are showed to the user by default but they will not result in ending the script.
Notices:
These errors are non-critical and trivial errors that come across while executing the script in PHP. Example: trying to gain access the variable which is not defined. These errors are not showed to the users by default even if the default behavior is changed.
Fatal errors:
These are critical errors. Example: instantiating an object of a class which does not exist or a non-existent function is called. These errors results in termination of the script immediately and default behavior of PHP is shown to them when they take place. Twelve different error types are used to represent these variations internally.

(2018 Latest PHP Interview Questions And Answers)

15. Explain PHP variable length argument function?

Answer: PHP supports variable length argument function. It means you can pass 0, 1 or n number of arguments in 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. (C Sharp DotNet Online Training)

16. What is PHP session_start() and session_destroy() function?

Answer: PHP session_start() function is used to start the session. It starts a new or resumes the existing session. It returns the existing session if session is created already. If session is not available, it creates and returns new sessions.

17. What Are The Differences Between Get And Post Methods In Form Submitting, Give The Case Where We Can Use Get And We Can Use Post Methods?

Answer :

When you want to send short or small data, not containing ASCII characters, then you can use GET” Method. But for long data sending, say more then 100 character you can use POST method.

Once most important difference is when you are sending the form with GET method. You can see the output which you are sending in the address bar. Whereas if you send the form with POST” method then user can not see that information. (SAP FICO Training Videos)

18. What Are The Different Types Of Errors In Php?

Answer:
Here are three basic types of runtime errors in PHP:

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.
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.
Fatal errors: These are critical errors – for example, instantiating an object of a nonexistent 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.
Internally, these variations are represented by twelve different error types.

19. What’s The Difference Between Include And Require?

Answer :
It’s how they handle failures. 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.

20. What Is Meant By Pear In Php?

Answer :

PEAR is the next revolution in PHP. This repository is bringing higher level programming to PHP. PEAR is a framework and distribution system for reusable PHP components. It eases installation by bringing an automated wizard, and packing the strength and experience of PHP users into a nicely organised OOP library. PEAR also provides a command-line interface that can be used to automatically install “packages”. (2018 Latest PHP Interview Questions And Answers)

21. Would You Initialize Your Strings With Single Quotes Or Double Quotes?

Answer :

Since the data inside the single-quoted string is not parsed for variable substitution, it’s always a better idea speed-wise to initialize a string with single quotes, unless you specifically need variable substitution.

22. What Are The Advantages Of Stored Procedures, Triggers, Indexes?

Answer :

A stored procedure is a set of SQL commands that can be compiled and stored in the server. Once this has been done, clients don’t need to keep re-issuing the entire query but can refer to the stored procedure. This provides better overall performance because the query has to be parsed only once, and less information needs to be sent between the server and the client. You can also raise the conceptual level by having libraries of functions in the server. However, stored procedures of course do increase the load on the database server system, as more of the work is done on the server side and less on the client (application) side. Triggers will also be implemented. A trigger is effectively a type of stored procedure, one that is invoked when a particular event occurs. For example, you can install a stored procedure that is triggered each time a record is deleted from a transaction table and that stored procedure automatically deletes the corresponding customer from a customer table when all his transactions are deleted.

Indexes are used to find rows with specific column values quickly. Without an index, MySQL must begin with the first row and then read through the entire table to find the relevant rows. The larger the table, the more this costs. If the table has an index for the columns in question, MySQL can quickly determine the position to seek to in the middle of the data file without having to look at all the data. If a table has 1,000 rows, this is at least 100 times faster than reading sequentially. If you need to access most of the rows, it is faster to read sequentially, because this minimizes disk seeks.

23. What is the use of the function htmlentities?

Answer: htmlentities Convert all applicable characters to HTML entities This function is identical to htmlspecialchars() in all ways, except with htmlentities(), all characters which have HTML character entity equivalents are translated into these entities

24. Explain the difference between classes and interfaces?

Answer: In layman’s terms, an interface is a class without all the business logic. In an interface, all methods must be public and multiple inheritance is supported. However, all methods must be defined within the class that implements them. Abstract classes, on the other hand, can be declared with modifiers like public or internal, and can define properties or variables. Abstract classes do not support multiple inheritance and can only be extended by one abstract class.

25. What are the different types of errors in PHP ?

Answer:
Here are three basic types of runtime 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.

26. Explain Normalization Concept?

Answer :

The normalization process involves getting our data to conform to three progressive normal forms, and a higher level of normalization cannot be achieved until the previous levels have been achieved (there are actually five normal forms, but the last two are mainly academic and will not be discussed).

First Normal Form
The First Normal Form (or 1NF) involves removal of redundant data from horizontal rows. We want to ensure that there is no duplication of data in a given row, and that every column stores the least amount of information possible (making the field atomic).

Second Normal Form
Where the First Normal Form deals with redundancy of data across a horizontal row, Second Normal Form (or 2NF) deals with redundancy of data in vertical columns. As stated earlier, the normal forms are progressive, so to achieve Second Normal Form, your tables must already be in First Normal Form.

Third Normal Form
I have a confession to make; I do not often use Third Normal Form. In Third Normal Form we are looking for data in our tables that is not fully dependant on the primary key, but dependant on another value in the table

(2018 Latest PHP Interview Questions And Answers)

27. What is “echo” in PHP?

Answer: PHP echo output one or more string. It is a language construct not a function. So use of parentheses is not required. But if you want to pass more than one parameter to echo, use of parentheses is required.

28. Explain PHP parameterized functions?

Answer: PHP parameterized functions are functions with parameters. You can pass any number of parameters inside a function. These passed parameters act as variables inside your function. They are specified inside the parentheses, after function name. Output depends upon dynamic values passed as parameters into function.
(Dot Net Interview Questions And Answers Pdf)

29. How can we increase execution time of a PHP script?

Answer: By default, 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 php.ini file

When a script is called, set_time_limit function restarts the timeout counter from zero. It means, if default timer is set to 30 sec, and 20 sec is specified in function set_time_limit(), then script will run for 45 seconds. If 0sec is specified in this function, script takes unlimited time.

30. So If Md5() Generates The Most Secure Hash, Why Would You Ever Use The Less Secure Crc32() And Sha1()?

Answer :

Crypto usage in PHP is simple, but that doesn’t mean it’s free. First off, depending on the data that you’re encrypting, you might have reasons to store a 32-bit value in the database instead of the 160-bit value to save on space. Second, the more secure the crypto is, the longer is the computation time to deliver the hash value. A high volume site might be significantly slowed down, if frequent md5() generation is required.

31. Steps For The Payment Gateway Processing?

Answer :

An online payment gateway is the interface between your merchant account and your Web site. The online payment gateway allows you to immediately verify credit card transactions and authorize funds on a customer’s credit card directly from your Web site. It then passes the transaction off to your merchant bank for processing, commonly referred to as transaction batching.

32. What Is A Cookie?

Answer :
A cookie is a small amount of information sent by a Web server to a web browser and then sent back unchanged by the browser each time it accesses that server. HTTP cookies are used for authenticating, tracking, and maintaining specific information about users, such as site preferences and the contents of their electronic shopping carts. The term “cookie” is derived from “magic cookie”, a well-known concept in computing which inspired both the idea and the name of HTTP cookies.
A cookie consists of a cookie name and cookie value.

(2018 Latest PHP Interview Questions And Answers)

33. what is the use of rand() in php?

Answer: It is used to generate random numbers.If called without the arguments it returns a pseudo-random integer between 0 and getrandmax(). If you want a random number between 6 and 12 (inclusive), for example, use rand(6, 12).This function does not generate cryptographically safe values, and should not be used for cryptographic uses. If you want a cryptographically secure value, consider using openssl_random_pseudo_bytes() instead.

34. What is mean by an associative array?

Answer: Associative arrays are arrays that use string keys is called associative arrays.

35. What is htaccess? Why do we use this and Where?

Answer: htaccess files are configuration files of Apache Server which provide
a way to make configuration changes on a per-directory basis. A file,
containing one or more configuration directives, is placed in a particular
document directory, and the directives apply to that directory, and all
subdirectories thereof. (Company)

36. How can we send mail using JavaScript?

Answer : JavaScript does not have any networking capabilities as it isdesigned to
work on client site. As a result we can not send mails usingJavaScript. But we can
call the client side mail protocol mailtovia JavaScript to prompt for an Email to
send. this requires the client to approve it.

37. What is the difference between include(), include_once() and require_once()?

Answer: The include() statement includes and evaluates a specified line i.e. it
will include a file based in the given path. require() does the same thing expect
upon failure it will generate a fatal error and halt the script whereas include() will
just gives a warning and allow script to continue. require_once() will check if the
file already has been included and if so it will not include the file again.

38. What is the use of explode() function ?

Answer: Syntax : array explode ( string $delimiter , string $string [, int $limit ] );
This function breaks a string into an array. Each of the array elements is a substring of string formed by splitting it on boundaries formed by the string delimiter.

39. What is PEAR in PHP?

Answers : PEAR(PHP Extension and Application Repository) is a framework and
repository for reusable PHP components. PEAR is a code repository containing all
kinds of php code snippets and libraries.
PEAR also offers a command-line interface that can be used to automatically
install “packages”.
$message vs. $$message in PHP.
$message is a variable with a fixed name. $$message is a variable whose name is
stored in $message.
If $message contains “var”, $$message is the same as $var.Echo vs. print
statement.

40. What is the difference between GET and POST functions?

Answer: GET function is normally used when the result of using this function does not
cause any visible change on the state of the world. This is normally used in cases
like searching from a database where no changes are made to the system.
POST function is used when there is a visible change on the state of the world.
When we use a POST function, normally the system changes. E.g. when we add,
delete or modify values from a database. A simple example is a form submission.

(2018 Latest PHP Interview Questions And Answers)

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

Answers:  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.

42. Explain Normalization Concept?

Answer :

The normalization process involves getting our data to conform to three progressive normal forms, and a higher level of normalization cannot be achieved until the previous levels have been achieved (there are actually five normal forms, but the last two are mainly academic and will not be discussed).

First Normal Form
The First Normal Form (or 1NF) involves removal of redundant data from horizontal rows. We want to ensure that there is no duplication of data in a given row, and that every column stores the least amount of information possible (making the field atomic).

Second Normal Form
Where the First Normal Form deals with redundancy of data across a horizontal row, Second Normal Form (or 2NF) deals with redundancy of data in vertical columns. As stated earlier, the normal forms are progressive, so to achieve Second Normal Form, your tables must already be in First Normal Form.

Third Normal Form
I have a confession to make; I do not often use Third Normal Form. In Third Normal Form we are looking for data in our tables that is not fully dependant on the primary key, but dependant on another value in the tabl

43. What is Open Source Software?

Answer :Software in which the source codes are freely used, modify, and shared
by anyone are called Open Source Software. These can also be distributed under
licenses that adhere with the Open Source Definition.

44. Differences between GET and POST methods ?

Answer: 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 .

45. Difference between mysql_connect and mysql_pconnect?

Answer: 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.

(2018 Latest PHP Interview Questions And Answers)

46. Determine the value of $pear after executing the code below. What will strlen($pear) return? Explain your answer.

Answer: This question reveals a few interesting things about the way PHP interprets code. The value of $pear in the code above will be the string “PEAR P” or the string “PEAR ” followed by seven spaces, followed by “P,” which is the first character in the string “PHP Extension and Application Repository.” The value returned by strlen($pear) will thus be 13. Since an element of a string can only consist of one character, and the count of elements within a string starts with 0, $pear[12] sets the 13th character of the string to the letter “P.” Interestingly enough, we chose to set the 13th value of a string that only has five characters. While other language interpreters might have thrown an out-of-bounds index error, PHP is more forgiving and fills in the blanks with empty spaces.

47. What is the importance of “method” attribute in a html form?

Answer: “method” attribute determines how to send the form-data into the server.There are two methods, get and post. The default method is get.This sends the form information by appending it on the URL.Information sent from a form with the POST method is invisible to others and has no limits on the amount of information to send.

48. How is it possible to set an infinite execution time for PHP script?

Answer : 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.

49. What is the use of ‘print’ in php?

Answer: This is not actually a real function, It is a language construct. So you can use with out parentheses with its argument list.
Example print(‘PHP Interview questions’);
print ‘Job Interview ‘);

50. What should we do to be able to export data into an Excel file?

Answer : 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

2018 Latest PHP Interview Questions And Answers was last modified: September 1st, 2018 by Raghu ram

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.