Lấy URL đường dẫn của trang hiện tại bằng PHP

Lấy URL đường dẫn của trang hiện tại bằng PHP
{VnTim™} Đôi lúc code Bạn sẽ cần dùng đến đường dẫn trang hiện tại: ví dụ bạn cần kiểm tra người dùng đang ở trang nào, đang thao tác những gì hay lưu đường dẫn vào 1 biến tạm để nếu nhấn nút Back sẽ trở lại đúng trang đó...
Để thực hiện yêu cầu ✅Lấy URL đường dẫn của trang hiện tại với PHP ta có thể làm như sau:

Trường hợp đơn giản
URL dạng: http://vntim.com không có port...


<?php
Echo “Đây là URL hiện tại của bạn: http://”.$_SERVER[“SERVER_NAME”].$_SERVER[“REQUEST_URI”];
?>

Kết quả: Đây là URL hiện tại của bạn: http://vntim.blogspot.com/2018/07/lay-url-duong-dan-trang-hien-tai-php.html

Code 2: Nếu bạn cần lấy tên miền hiện tại, bạn có thể sử dụng code dưới đây:

<?php
# using http_host
$domain = $_server['http_host'];
echo $domain; //echo vntim.blogspot.com
?>

Code trên chỉ cho chúng ta tên website .com .net không bao gồm tiền tố http:// hoặc https:// Vì vậy các bạn nên lưu ý khi sử dụng cú pháp này

Code 3: Trả về biến mà bạn đăng truy cập

<?php
# using query_string

$querystring = $_server['query_string'];

echo "query: " . $querystring;
?>

ví dụ: http://vntim.com/index.php?user=admin
Kết quả trả về user=admin

Trường hợp phức tạp
Trường hợp này sử dụng cho hệ thống dùng http, https, port lẫn lộn. Khi đó URL hiện tại sẽ bao gồm cả port, http, https.

❤Để lấy đường dẫn URL của trang hiện tại, bạn chỉ cần sử dụng đoạn code PHP đơn giản như sau:

<?php
function getcurrentpageurl() {
$pageurl = 'http';

if (!empty($_server['https'])) {
   if ($_server['https'] == 'on') {
   $pageurl .= "s";
   }
}

$pageurl .= "://";

if ($_server["server_port"] != "80") {
   $pageurl .= $_server["server_name"] . ":" . $_server["server_port"] . $_server["request_uri"];
} else {
   $pageurl .= $_server["server_name"] . $_server["request_uri"];
}
return $pageurl;
}
?>

Đọc đoạn code ở trên, có thể có nhiều bạn bỡ ngỡ, thắc mắc không hiểu chức năng của biến $_SERVER[“SERVER_NAME”], $_SERVER[“SERVER_PORT”]…Sau khi đọc chú thích dưới đây, các bạn sẽ gỡ bỏ được các khúc mắc đó.

Giải thích: Trong getURLCurrentPage chúng ta sử dụng chủ yếu là biến $_SERVER để xác định URL của trang hiện tại. Tương tự, biến $_SERVER có thể cho ra những kết quả khác tùy theo cách xử dụng.

Ví dụ ta có dường dẫn sau: http://vntim.com/page/about.php?page=12

- $_SERVER[‘HTTP_HOST’] => vntim.com
- $_SERVER[‘PHP_SELF’] => /page/about.php
- $_SERVER[‘REQUEST_TIME’] => Thời gian mà client gửi request ở dạng TIME _STAMP
- $_SERVER[‘QUERY_STRING’] => page=12
- $_SERVER[‘DOCUMENT_ROOT’] = Thư mục root chứa mã nguồn website. VD: /home/vntimcom/public_html (đối với Linux) hay C:\www (đối với windows)
- $_SERVER[‘REMOTE_HOST’] = Hostname của người truy cập
- $_SERVER[‘REMOTE_PORT’] = Port mà trình duyệt mở ra để kết nối tới server
- $_SERVER[‘REQUEST_URI’] => /page/about.php?page=12
- $_SERVER[‘SERVER_NAME’] = Tên của server
- $_SERVER[‘SERVER_ADDR’] = IP của server
- $_SERVER[‘REMOTE_ADDR’] = IP của người truy cập
- $_SERVER[‘HTTP_USER_AGENT’] = Thông tin trình duyệt của người truy cập

Nếu câu trả lời sai ngại gì không chỉnh? Nếu câu trả lời thiếu ngại gì không thêm? Nếu có câu trả lời hay hơn ngại gì không chia sẻ? Mời các bạn comment bên dưới
VnTim™ Chúc các bạn thành công!
Hoangdacviet

Bé Viết 18 tuổi, hiện đang bán máy dạo tại Công ty Kami Mask
Quan điểm sống: NO PAIN NO GAIN ❤️ Sống ko chờ đợi!
Sử dụng cái Bạn có ntn mới quan trọng!
Sải cánh Đại Bàng, bước chân Sư Tử!
Yêu chạy bộ, thích du lịch bụi và kiếm tiền nữa!
Đang rảnh, cần lắm Bạn nữ có nhu cầu lấy chồng
Kami Mask SvTre.com LLC Kome

Đăng nhận xét

» VnTim™ cảm ơn bạn đã đọc bài viết. :)
» Nếu có thắc mắc hay góp ý, bạn hãy để lại một nhận xét.
» Nếu thấy bài viết hay hãy chia sẻ với những người quanh bạn.
» Vui lòng đăng những nhận xét lịch sự và gõ tiếng Việt có dấu.
» Rất cảm ơn những comment thiện ý. Đừng Spam nhé!

Mới hơn Cũ hơn