On this occasion, we will discuss Global and Superglobal Variables. These variables are some that are very important to implement. Therefore, let us study in more detail so that we will understand what Global and Superglobal Variable are and their benefits.
Superglobals were presented in PHP 4.1.0, and are worked in factors that are constantly accessible in all degrees.
PHP Global Variables – Superglobals
Some predefined factors in PHP are “superglobals”, which implies that they are constantly available, paying little heed to scope – and you can get to them from any capacity, class or document without doing anything uncommon.
The PHP superglobal factors are:
- $GLOBALS
- $_SERVER
- $_REQUEST
- $_POST
- $_GET
- $_FILES
- $_ENV
- $_COOKIE
- $_SESSION
PHP Superglobal – $GLOBALS
Overly worldwide factors are worked in factors that are constantly accessible in all extensions.
PHP $GLOBALS
$GLOBALS is a PHP overly worldwide variable which is utilized to get to worldwide factors from anyplace in the PHP content (additionally from inside capacities or strategies).
PHP stores every single worldwide variable in an exhibit called $GLOBALS[index]. The list holds the name of the variable.
The model beneath tells the best way to utilize the excessively worldwide variable $GLOBALS:
1 2 3 4 5 6 7 8 9 |
<?php $x = 75; $y = 25; function addition() { $GLOBALS['z'] = $GLOBALS['x'] + $GLOBALS['y']; } addition(); echo $z; ?> |
PHP Superglobal – $_SERVER
Excessively worldwide factors are worked in factors that are constantly accessible in all degrees.
PHP $_SERVER
$_SERVER is a PHP excessively worldwide variable which holds data about headers, ways, and content areas.
The model underneath tells the best way to utilize a portion of the components in $_SERVER:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
<?php echo $_SERVER['PHP_SELF']; echo "<br>"; echo $_SERVER['SERVER_NAME']; echo "<br>"; echo $_SERVER['HTTP_HOST']; echo "<br>"; echo $_SERVER['HTTP_REFERER']; echo "<br>"; echo $_SERVER['HTTP_USER_AGENT']; echo "<br>"; echo $_SERVER['SCRIPT_NAME']; ?> |
The following table lists the most important elements that can go inside $_SERVER:
Element/Code | Description |
---|---|
$_SERVER[‘PHP_SELF’] | Returns the filename of the currently executing script |
$_SERVER[‘GATEWAY_INTERFACE’] | Returns the version of the Common Gateway Interface (CGI) the server is using |
$_SERVER[‘SERVER_ADDR’] | Returns the IP address of the host server |
$_SERVER[‘SERVER_NAME’] | Returns the name of the host server (such as www.w3schools.com) |
$_SERVER[‘SERVER_SOFTWARE’] | Returns the server identification string (such as Apache/2.2.24) |
$_SERVER[‘SERVER_PROTOCOL’] | Returns the name and revision of the information protocol (such as HTTP/1.1) |
$_SERVER[‘REQUEST_METHOD’] | Returns the request method used to access the page (such as POST) |
$_SERVER[‘REQUEST_TIME’] | Returns the timestamp of the start of the request (such as 1377687496) |
$_SERVER[‘QUERY_STRING’] | Returns the query string if the page is accessed via a query string |
$_SERVER[‘HTTP_ACCEPT’] | Returns the Accept header from the current request |
$_SERVER[‘HTTP_ACCEPT_CHARSET’] | Returns the Accept_Charset header from the current request (such as utf-8,ISO-8859-1) |
$_SERVER[‘HTTP_HOST’] | Returns the Host header from the current request |
$_SERVER[‘HTTP_REFERER’] | Returns the complete URL of the current page (not reliable because not all user-agents support it) |
$_SERVER[‘HTTPS’] | Is the script queried through a secure HTTP protocol |
$_SERVER[‘REMOTE_ADDR’] | Returns the IP address from where the user is viewing the current page |
$_SERVER[‘REMOTE_HOST’] | Returns the Host name from where the user is viewing the current page |
$_SERVER[‘REMOTE_PORT’] | Returns the port being used on the user’s machine to communicate with the web server |
$_SERVER[‘SCRIPT_FILENAME’] | Returns the absolute pathname of the currently executing script |
$_SERVER[‘SERVER_ADMIN’] | Returns the value given to the SERVER_ADMIN directive in the web server configuration file (if your script runs on a virtual host, it will be the value defined for that virtual host) (such as someone@w3schools.com) |
$_SERVER[‘SERVER_PORT’] | Returns the port on the server machine being used by the web server for communication (such as 80) |
$_SERVER[‘SERVER_SIGNATURE’] | Returns the server version and virtual host name which are added to server-generated pages |
$_SERVER[‘PATH_TRANSLATED’] | Returns the file system based path to the current script |
$_SERVER[‘SCRIPT_NAME’] | Returns the path of the current script |
$_SERVER[‘SCRIPT_URI’] | Returns the URI of the current page |
PHP Superglobal – $_REQUEST
Overly worldwide factors are worked in factors that are constantly accessible in all degrees.
PHP $_REQUEST
PHP $_REQUEST is a PHP overly worldwide variable which is utilized to gather information in the wake of presenting a HTML structure.
The model underneath shows a structure with an information field and a submit button. At the point when a client presents the information by tapping on “Present”, the structure information is sent to the record determined in the activity characteristic of the <form> tag. In this model, we point to this document itself for handling structure information. In the event that you wish to utilize another PHP record to process structure information, supplant that with the filename of your decision. At that point, we can utilize the excessively worldwide variable $_REQUEST to gather the estimation of the information field:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
<html> <body> <form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>"> Name: <input type="text" name="fname"> <input type="submit"> </form> <?php if ($_SERVER["REQUEST_METHOD"] == "POST") { // collect value of input field $name = $_REQUEST['fname']; if (empty($name)) { echo "Name is empty"; } else { echo $name; } } ?> </body> </html> |
PHP Superglobal – $_POST
Too worldwide factors are worked in factors that are constantly accessible in all extensions.
PHP $_POST
PHP $_POST is a PHP too worldwide variable which is utilized to gather structure information in the wake of presenting a HTML structure with method=”post”. $_POST is additionally broadly used to pass factors.
The model beneath shows a structure with an information field and a submit button. At the point when a client presents the information by tapping on “Present”, the structure information is sent to the document determined in the activity property of the <form> tag. In this model, we point to the record itself for preparing structure information. In the event that you wish to utilize another PHP document to process structure information, supplant that with the filename of your decision. At that point, we can utilize the very worldwide variable $_POST to gather the estimation of the info field:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
<html> <body> <form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>"> Name: <input type="text" name="fname"> <input type="submit"> </form> <?php if ($_SERVER["REQUEST_METHOD"] == "POST") { // collect value of input field $name = $_POST['fname']; if (empty($name)) { echo "Name is empty"; } else { echo $name; } } ?> </body> </html> |
PHP Superglobal – $_GET
Too worldwide factors are worked in factors that are constantly accessible in all degrees.
PHP $_GET
PHP $_GET is a PHP too worldwide variable which is utilized to gather structure information in the wake of presenting a HTML structure with method=”get”.
$_GET can likewise gather information sent in the URL.
Expect we have a HTML page that contains a hyperlink with parameters:
1 2 3 4 5 |
<html> <body> <a href="test_get.php?subject=PHP&web=W3schools.com">Test $GET</a> </body> </html> |
When a user clicks on the link “Test $GET”, the parameters “subject” and “web” are sent to “test_get.php”, and you can then access their values in “test_get.php” with $_GET.
The example below shows the code in “test_get.php”:
1 2 3 4 5 6 7 |
<html> <body> <?php echo "Study " . $_GET['subject'] . " at " . $_GET['web']; ?> </body> </html> |
Thank you for reading and practice this article. Hope this can be helpful and useful…