How can you prevent a class from being inherited by another class in PHP?
- Declare it as 'final'
- Declare it as 'static'
- Declare it as 'const'
- Declare it as 'sealed'
To prevent a class from being inherited, you declare it as 'final.' The 'final' keyword indicates that the class cannot be extended by other classes.
You are developing a web application where users can submit comments. Which of the following techniques would you implement to ensure that malicious scripts aren't executed when other users view the comments?
- Input Validation and Sanitization
- Server-Side Rendering (SSR)
- Using Base64 Encoding
- Implementing Captcha Verification
Input Validation and Sanitization are key to preventing Cross-Site Scripting (XSS) attacks. These techniques ensure that user input is thoroughly checked and sanitized to prevent the execution of malicious scripts when displaying comments. SSR, Base64 encoding, and Captcha are useful in other contexts but do not directly prevent XSS.
Which superglobal array is used to access session variables in PHP?
- $_GET
- $_POST
- $_SESSION
- $_COOKIE
The superglobal array used to access session variables in PHP is $_SESSION. It stores session data that can be accessed across multiple pages during a user's session.
When using PDO in PHP, which method is typically used to execute a prepared statement?
- execute()
- query()
- fetch()
- prepare()
In PDO (PHP Data Objects), the 'execute()' method is typically used to execute a prepared statement. It is used after preparing the statement with 'prepare()' to execute the query.
Which control structure is best suited for executing a block of code multiple times based on a condition?
- if statement
- for loop
- switch statement
- while loop
A 'for' loop is ideal for executing code repeatedly based on a condition, typically with an initialization, condition, and increment expression.
In PHP, the session data is serialized using the ________ mechanism.
- Object-Oriented
- Session-Cookie
- Serialize-Deserialize
- URL Rewriting
The correct option is "Serialize-Deserialize" mechanism. PHP uses serialization to store session data as a serialized string.
When a form is submitted, the actual method used for sending data can be found in the PHP superglobal called ________.
- $_SERVER
- $_REQUEST
- $_POST
- $_METHOD
The method used for sending data when a form is submitted can be found in the PHP superglobal $_POST.
In PHP, the namespace separator is represented by ________.
- .
- :
- ;
In PHP, the backslash () is used as the namespace separator. It's used to separate namespaces and access classes and functions within namespaces.
The practice of writing code that anticipates and gracefully handles potential issues is known as ________.
- Exception Handling
- Defensive Programming
- Code Optimization
- Bug Avoidance
Defensive Programming involves proactively addressing potential issues in code, making it more robust and error-resistant.
How can you prevent the display of PHP errors on a production website while still logging them?
- Set display_errors to Off in PHP configuration
- Use error_reporting(E_ALL) to suppress error display, while configuring a custom error handler for logging
- Enable error_reporting(E_ALL) to display errors only for the admin
- Use PHP's debug_backtrace() to hide errors from public view, while logging them
To prevent the display of PHP errors on a production website while logging them, you should configure a custom error handler to log errors and set display_errors to Off in the PHP configuration.