Advance PHP Question

What are magic methods in PHP ?

PHP functions that start with a double underscore – a “__” – are called magic functions (and/or methods) in PHP. They are functions that are always defined inside classes, and are not stand-alone (outside of classes) functions. The magic functions available in PHP are: __construct(), __destruct(), __call(), __callStatic(), __get(), __set(), __isset(), __unset(), __sleep(), __wakeup(), __toString(), __invoke(), __set_state(), __clone(), and __autoload().


What Are PHP Traits?
It is a mechanism that enables us to try and do code reusability in single inheritance language, such as PHP. Its structure is sort of same as that of PHP code, simply that it’s a bunch of reusable functions. Despite having the same name they all having a separate declaration resulting in code duplicity. We will make PHP Traits by clustering these functions. The class will use this attribute to incorporate the functions outlined in it.


Why we tend to Use Extract() In PHP?
The extract() performs import variables into the local symbol table from an array. It uses variable names as array keys and variable values as array values. for every component of an array, it creates a variable within the same symbol table. Following is the syntax.
extract(array,extract_rules,prefix)


What are the most common errors in PHP?
The most common types of runtime errors in PHP are as follows:
Notices: By default, these errors don’t seem to be flaunted to the user the least bit – though you’ll be able to modify this default behavior.
These include non-critical trivial errors.
For example, accessing a variable that has not yet been outlined
Warnings: By default, these errors are visible to the user, however, they are doing not lead to script termination.
These include a lot of serious errors.
For example, making an attempt to include () a file that does not exist
Fatal Errors: These errors cause the termination of the script immediately, and PHP’s default behavior is to show them to the user. These include critical errors
For example, instantiating an object of a non-existent class.


What Is PDO in PHP?

PDO stands for <PHP Data Object>.

It is a group of PHP extensions that give a core PDO class and database, specific drivers.
It provides a vendor-neutral, lightweight, data-access abstraction layer. Thus, in spite of what database we tend to use, the function to issue queries and fetch data will be the same.
It focuses on data access abstraction rather than database abstraction.
PDO needs familiarised options within the core of PHP 5. Therefore, it’ll not run with earlier versions of PHP.
PDO divides into two components.

•The core that provides the interface.
•Drivers to access explicit driver.


What is the way to get the information about the uploaded file in the receiving script?

Once the web application server receives the file after uploading, it calls the PHP script to process it.

This receiving PHP script will get the data of the uploaded file exploitation the predefined array known as $_FILES. PHP arranges this data in
$_FILES as a two-dimensional array. We will retrieve it as follows.

•$_FILES[$fieldName][‘name’] – It represents the file name on the browser system.
•$_FILES[$fieldName][‘size’] – It represents the scale of the go in bytes.
•$_FILES[$fieldName][‘tmp_name’] – It offers the temporary computer file name with that the uploaded file got hold on on the server.
•$_FILES[$fieldName][‘error’] – It returns the error code related to this file transfer.
•The $fieldName is that the name utilized in the <input type=”file” name=”<?php echo $fieldName; ?>”>


What’s the distinction between Split And Explode functions for string manipulation in PHP?

Both of them perform the task of extracting a String. However, the tactic they use is completely different.
The split() function splits the String into an array employing a regular expression and returns an array.
For Example.
split(:May:June: July);
Returns an array that contains May, June, July.

The explode() function splits the String using a String delimiter.
For Example.
explode (and May and June and July);
It also returns an array that contains May, June, July.


Define PEAR in PHP?

PEAR stands for “PHP Extension and Application Repository”. PEAR is the next revolution in PHP. PEAR is used to automatically install “packages” and PEAR could be a framework and distribution system for reusable PHP components.
The purpose of PEAR is to provide:
For PHP users it is a structured library of open-sourced code
It is a system for code distribution and package maintenance
PHP Foundation categories (PFC).
PHP Extension Community Library (PECL).


What library is used for PDF in PHP?

This is the most popular PHP Interview Questions asked in an interview. The PDF functions in PHP will produce PDF files exploitation the PDFlib library Version 6. PDFlib offers an object-oriented API for PHP 5 in addition to the function-oriented API for PHP 4.
There is also the » Panda module. FPDF is a PHP class that permits generating PDF files with pure PHP (without using the PDFlib library.)
F from FPDF stands for Free: you’ll use it for any quite usage and modify it to fit your desires. FPDF needs no extension to works with PHP4 and PHP5.


What is the way to avoid email sent through PHP getting into the spam folder?

There’s no special methodology of keeping your emails from being known as spam. But we will contemplate some points that cause this downside.
Let me explain a few common reasons.
1. Sending mail using the `mail` function with minimum parameters
we tend to should use all potential mail headers like `MIME-version`, `Content-type`, `reply address`, `from address` etc. so as to avoid this case
2. Not employing a correct SMTP mail script like PHPmailer or SwiftMailer with Associate in Nursing actual e-mail credentials as well as the username, watchword, etc.
If we tend to send e-mail from an actual e-mail account using an SMTP mailer script with username and password, then we will avoid
If you’re on a shared web server, consider buying a unique IP address for yourself, as a result, others using your IP may have gotten your IP blacklisted for spam. Do not send more than 250 emails to every supplier per hour.