- Trending Categories
- Data Structure
- Networking
- RDBMS
- Operating System
- Java
- iOS
- HTML
- CSS
- Android
- Python
- C Programming
- C++
- C#
- MongoDB
- MySQL
- Javascript
- PHP
- Physics
- Chemistry
- Biology
- Mathematics
- English
- Economics
- Psychology
- Environmental Science
- Social Studies
- Fashion Studies
- Legal Studies
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- articles and Answers
- Effective Resume Writing
- HR Interview articles
- Computer Glossary
- Who is Who
How to Get Current Page URL using PHP ?
In this tutorial, we will see how to get the complete URL of currently running pages using PHP, along with understanding their implementation through the examples. $_SERVER is a super global variable in PHP that contains the details related to the header, paths, and script locations. The status of HTTPS will be saved in the Global variable $_SERVER[‘HTTPS’]. So, using the $_SERVER[‘HTTPS’] in isset() function, that is used to check whether it exists or not. This will also tell us whether HTTPS is enabled or not. Check the value of $_SERVER[‘HTTPS’], if it is “on”, then HTTPS is enabled and we have to append “https” to the URL.
Approach: There are a few steps to get the complete URL of the currently running page which are given below:
- Create a PHP variable that will store the URL in string format.
- Check whether the HTTPS is enabled by the server. If it is, append “https” to the URL string. If HTTPS is not enabled, append “http” to the URL string.
- Append the regular symbol, i.e. “://” to the URL.
- Append the HTTP_HOST(The host to which we have requested, e.g. www.google.com, www.yourdomain.com, etc…) name of the server.
- Append the REQUEST_URI(The resource which we have requested, e.g. /index.php, etc…) to the URL string.
Note: Use isset() function to check whether HTTPS is enabled or not. The isset() function is used to check a variable exists or not.
Example 1: This example illustrates getting the url of the current page.
<?php
// Program to display URL of current page.
if (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on')
$link = "https";
else $link = "http";
// Here append the common URL characters.
$link .= "://";
// Append the host(domain name, ip) to the URL.
$link .= $_SERVER['HTTP_HOST'];
// Append the requested resource location to the URL
$link .= $_SERVER['REQUEST_URI'];
// Print the link
echo $link;
?>
Output:
https://codegyan.in/
Example 2: Getting the url of the webpage using $_SERVER[‘HTTP_HOST’] that will return the host header from the current request.
<?php
// Program to display current page URL.
$link = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS']
=== 'on' ? "https" : "http") .
"://" . $_SERVER['HTTP_HOST'] .
$_SERVER['REQUEST_URI'];
echo $link;
?>
Output:
https://codegyan.in/
The output of the above code is https://codegyan.in/ instead of https://codegyan.in/index.php. In order to fix this problem, need to replace, $_SERVER[‘REQUEST_URI’] with $_SERVER[‘PHP_SELF’].
Program 3: This example is displaying the currently executing PHP file URL.
<?php
// Program to display complete URL
if (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on')
$link = "https";
else $link = "http";
// Here append the common URL
// characters.
$link .= "://";
// Append the host(domain name,
// ip) to the URL.
$link .= $_SERVER['HTTP_HOST'];
// Append the requested resource
// location to the URL
$link .= $_SERVER['PHP_SELF'];
// Display the link
echo $link;
?>
Output:
https://codegyan.in/index.php
Program 4: This example describes getting the complete url of the webpage.
<?php
// Program to display complete URL
$link = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS']
=== 'on' ? "https" : "http") . "://" .
$_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF'];
// Display the complete URL
echo $link;
?>
Output:
https://codegyan.in/index.phpPHP is a server-side scripting language designed specifically for web development. You can learn PHP from the ground up by following this PHP Tutorial and PHP Examples.
ads