PHP Interview Questions and Answers
This section covers a wide range of PHP interview questions, from fundamental concepts to more advanced topics in file handling, database interactions, error handling, and security.
PHP Sessions
A session in PHP is a way to store information about a user across multiple page requests. A unique session ID is used to identify the user's session. The session ID is typically stored in a cookie on the client-side and a session data on the server-side. The session ends when the browser is closed, or the server times out the session.
session_start() and session_destroy()
session_start() initiates a PHP session (creates a new one or resumes an existing one). session_destroy() ends the current session by deleting the session data on the server-side.
Sessions vs. Cookies
| Feature | Session | Cookie |
|---|---|---|
| Storage Location | Server-side | Client-side (browser) |
| Data Storage | Can store multiple variables | Stores only string data |
| Expiry | Typically ends when the browser closes or times out | Can be set to expire at a specific time |
Opening Files in PHP
The fopen() function opens a file or URL.
Syntax
$fileHandle = fopen($filename, $mode);
Reading Files in PHP
PHP offers several functions for reading files:
fread(): Reads a specified number of bytes.fgets(): Reads a single line.fgetc(): Reads a single character.
More details on file reading functions
Writing to Files in PHP
The fwrite() and fputs() functions write data to a file. Make sure you open the file in the appropriate mode (w, a, etc.).
More details on file writing functions
Deleting Files in PHP
Syntax
unlink($filename);
More details on deleting files
Running PHP Scripts from the Command Line
Command
php myScript.php
Uploading Files in PHP
Use move_uploaded_file() to move an uploaded file from the temporary location to a permanent location.
Downloading Files in PHP
Use readfile() to send a file's contents directly to the browser for download.
More details on file downloads
Sending Emails in PHP
Syntax
mail($to, $subject, $message, $headers);
More details on sending emails
Connecting to MySQL with PHP
[Explain how to connect to a MySQL database using PHP's MySQLi or PDO extensions. Include examples.]
More details on MySQL connections
Creating Database Connections and Executing Queries
Use mysqli_query() (MySQLi extension) or PDO::query() (PDO extension) to execute SQL queries.
More details on executing queries
Increasing PHP Script Execution Time
Modify the max_execution_time directive in your php.ini file or use the set_time_limit() function within your script.
Types of Errors in PHP
- Notices: Non-critical errors (usually not displayed to the user).
- Warnings: More serious errors; the script continues execution.
- Fatal errors: Critical errors; script termination.
Stopping PHP Script Execution
Syntax
exit(); // or die();
Encryption Functions in PHP
crypt()md5()sha1()- Other hashing and encryption functions
.htaccess Files
.htaccess files contain Apache server directives for configuring things like URL rewriting, access control, and other settings.
explode() Function
The explode() function splits a string into an array based on a specified delimiter.
split() Function
The split() function splits a string into an array using a regular expression.
Getting the Client's IP Address
PHP Code
$clientIP = $_SERVER['REMOTE_ADDR'];
Persistent Cookies
Persistent cookies remain stored on the client's computer even after the browser is closed. They have an expiry date.
imagetypes() Function
The imagetypes() function returns a bitmask indicating which image types are supported by the GD library.
include() vs. require()
| Statement | include() |
require() |
|---|---|---|
| Error Handling | Issues a warning; continues execution | Issues a fatal error; stops execution |
Cookies in PHP
Cookies are small pieces of data stored on a user's browser. They're often used to store session identifiers.
[Include a brief explanation of how to create and use cookies in PHP.]
More details on creating cookies
PHP Parser
The PHP parser interprets PHP code. It handles the parsing of PHP code enclosed between the opening and closing PHP tags.
Creating a MySQL Database with PHP
- Connect to the MySQL server.
- Create the database using an SQL query (e.g.,
CREATE DATABASE database_name;). - Execute the query using a function like
mysqli_query()orPDO->exec().
Further Reading:
- Java Basics Interview Questions
- Java OOPs Interview Questions
- Java Multithreading Questions
- Java String & Exception Questions
- Java Collection Interview Questions
- JDBC Interview Questions
- Servlet Interview Questions
- JSP Interview Questions
- Spring Interview Questions
- Hibernate Interview Questions
- PL/SQL Interview Questions
- SQL Interview Questions
- Oracle Interview Questions
- Android Interview Questions
- SQL Server Interview Questions
- MySQL Interview Questions