Cách lấy url hoàn chỉnh trong php?

Xin chào @kartik,

Hãy xem $_SERVER['REQUEST_URI'], tôi. e

$actual_link = "http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";

Nếu bạn muốn hỗ trợ cả HTTP và HTTPS, bạn có thể sử dụng

$actual_link = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on' ? "https" : "http") . "://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";

Hope it helps!!

Thank You!!

Superglobal VariablesPurposes$_SERVER[‘HTTPS’]Nó trở lại nếu giao thức HTTPS được sử dụng trong URL của trang hiện tại. $_SERVER[‘HTTP_HOST’]Trả về tên của máy chủ của trang hiện tại. $_SERVER[‘REQUEST_URI’]Nó trả về tên tài nguyên được yêu cầu. $_SERVER[‘SERVER_PORT’]Nó trả về số cổng của máy chủ. $_SERVER[‘QUERY_STRING’]Nó trả về giá trị chuỗi truy vấn nếu nó tồn tại trong địa chỉ URL của trang hiện tại

ví dụ 1. Hiển thị URL của trang hiện tại bằng câu lệnh có điều kiện

Ví dụ sau đây cho thấy cách câu lệnh điều kiện có thể được sử dụng để lấy giao thức được sử dụng trong URL của trang hiện tại. Tạo một tệp PHP với tập lệnh sau

Giá trị của $_SERVER[‘HTTP_HOST’] được sử dụng để lấy tên miền của URL hiện tại. Giá trị của $_SERVER[‘REQUEST_URI’] được sử dụng để lấy tên của tài nguyên được yêu cầu. Hàm isset() được sử dụng để kiểm tra xem $_SERVER[‘HTTPS’] có được đặt hay không và nếu được đặt thì hãy kiểm tra giá trị của $_SERVER[‘HTTPS’] có được bật hay không. Tiếp theo, giá trị của ba biến này được kết hợp với ‘//. ’ để truy xuất toàn bộ URL của trang hiện tại


// Đọc tên miền của trang hiện tại
$domain = $_SERVER['HTTP_HOST'];
// Đọc tài nguyên được yêu cầu
$resource = $_SERVER['REQUEST_URI'];
// Tìm ra giao thức của url hiện tại
if(isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on')
$protocol = "https";
khác
$protocol = "http";

// Kết hợp tất cả các phần để có địa chỉ URL đầy đủ
$url = $protocol. ". //". $domain. $resource;
// In địa chỉ URL của trang hiện tại
echo "
trang là. "
hiện tại. $url;?>

đầu ra

Đầu ra sau sẽ xuất hiện sau khi chạy tập lệnh từ máy chủ. Giá trị của $_SERVER[‘HTTPS’] không được bật cho máy chủ cục bộ. Vì vậy, đầu ra hiển thị giao thức http cho URL hiện tại

Cách lấy url hoàn chỉnh trong php?

ví dụ 2. Hiển thị URL của trang hiện tại bằng toán tử bậc ba

Ví dụ sau đây cho thấy cách lấy URL đầy đủ của trang hiện tại bằng toán tử bậc ba. Tạo một tệp PHP với tập lệnh sau

Nếu điều kiện được sử dụng trong ví dụ trước để tìm ra giao thức nào được sử dụng trong URL của trang hiện tại. Nhiệm vụ tương tự được thực hiện bằng cách sử dụng toán tử bậc ba trong tập lệnh này. Hàm isset() được sử dụng để kiểm tra xem $_SERVER['HTTPS'] có phải là một tập hợp hay không và nếu giá trị của $_SERVER['HTTPS'] được bật, thì toán tử bậc ba sẽ trả về HTTPS, nếu không, nó sẽ trả về . Các phần khác của URL được truy xuất và in giống như ví dụ trước


// Tìm ra giao thức của url hiện tại
$protocol = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS']
== 'on' ? . "https" : "http");
// Đọc tên miền của trang hiện tại
$domain =   $_SERVER['HTTP_HOST'];
// Đọc tài nguyên được yêu cầu
$resource = $_SERVER['REQUEST_URI'];
// Kết hợp tất cả các phần để có địa chỉ URL đầy đủ
$url = $protocol. ". //". $domain. $resource;
// In địa chỉ URL của trang hiện tại
echo """""""""""""""""""""". $url;
?>

đầu ra

Đầu ra sau sẽ xuất hiện sau khi chạy tập lệnh từ máy chủ. Giá trị của $_SERVER[‘HTTPS’] không được bật cho máy chủ cục bộ. Vì vậy, đầu ra hiển thị giao thức HTTP cho URL hiện tại

Cách lấy url hoàn chỉnh trong php?

ví dụ 3. Hiển thị URL của trang hiện tại dựa trên số cổng

Trong hai ví dụ trước, giá trị của $_SERVER[‘HTTPS’] được sử dụng để tìm ra giao thức của URL hiện tại của trang và không có chuỗi truy vấn nào được sử dụng với URL. Ví dụ sau đây cho thấy cách sử dụng biến $_SERVER[‘SERVER_PORT’] để tìm hiểu giao thức và truy xuất địa chỉ URL đầy đủ bằng chuỗi truy vấn. Tạo một tệp PHP với tập lệnh sau

Ở đây, nhiều điều kiện logic và toán tử bậc ba được sử dụng để tìm ra giao thức. Nếu giá trị của $_SERVER[‘HTTPS’] trống hoặc được đặt thành tắt, thì nó sẽ kiểm tra giá trị của $_SERVER[‘SERVER_PORT’] để tìm ra giao thức của URL hiện tại. Biến $_SERVER[‘QUERY_STRING’] được sử dụng để truy xuất giá trị chuỗi truy vấn từ URL


// Tìm ra giao thức của url hiện tại
$protocol = ((. trống($_SERVER['HTTPS']) && $_SERVER['HTTPS']
!= 'tắt') . $_SERVER['SERVER_PORT'] == 443) ? "https://" . "http. //";
// Đọc tên miền của trang hiện tại
$domain =   $_SERVER['HTTP_HOST'];
// Đọc tài nguyên được yêu cầu
$resource = $_SERVER['REQUEST_URI'];
// Đọc giá trị chuỗi truy vấn
$query = $_SERVER['QUERY_STRING'];
// Kết hợp tất cả các phần để có địa chỉ URL đầy đủ
$url = $protocol. $domain. $resource;
// In địa chỉ URL của trang hiện tại
echo """"""""""""""""""""""""""""". $url;
// In phần chuỗi truy vấn
echo """"""""""""""""""""""""""""". $query;
?>

đầu ra

Đầu ra sau sẽ xuất hiện sau khi thực thi tập lệnh trên từ máy chủ mà không có bất kỳ chuỗi truy vấn nào. Không có chuỗi truy vấn nào được cung cấp trong URL. Vì vậy, đầu ra hiển thị chuỗi truy vấn trống

Cách lấy url hoàn chỉnh trong php?

Đầu ra sau sẽ xuất hiện sau khi thực thi đoạn mã trên từ máy chủ với chuỗi truy vấn. Đầu ra sau hiển thị địa chỉ URL với chuỗi truy vấn và chuỗi truy vấn riêng biệt

Phần kết luận

Các cách khác nhau để truy xuất URL đầy đủ của trang hiện tại được hiển thị trong hướng dẫn này bằng cách sử dụng các ví dụ khác nhau. Cách tách URL và chuỗi truy vấn cũng được trình bày trong hướng dẫn này. Hy vọng với hướng dẫn này sẽ giúp bạn đọc biết cách đọc toàn bộ URL của trang hiện tại bằng PHP script

Làm cách nào tôi có thể nhận được URL đầy đủ trong PHP?

Các biến siêu toàn cầu cần thiết như $_SERVER['HTTPS'], $_SERVER['REQUEST_URI'], $_SERVER['SERVER_PORT'] are used to get full URL in PHP. The variable HTTPS can easily retrieve the protocol in the URL of a webpage. If it returns a value “on”, then the protocol is HTTPS.

Làm cách nào để nhận tất cả các tham số URL trong PHP?

Các tham số từ một chuỗi URL có thể được truy xuất trong PHP bằng cách sử dụng các hàm parse_url() và parse_str() . Ghi chú. URL trang và các tham số được phân tách bằng dấu ? . hàm parse_url(). Hàm parse_url() được sử dụng để trả về các thành phần của URL bằng cách phân tích cú pháp URL đó.

Làm cách nào tôi có thể nhận được tất cả các liên kết từ một trang web bằng PHP?

Tập lệnh PHP để trích xuất URL từ trang web .
Bước 1. Tạo một biến để lưu URL nguồn. .
Bước 2. Đọc nguồn bằng hàm file_get_contents(). .
Step 3: Strip all tags except .. .
Bước 4. Sử dụng preg_split() để tách một chuỗi thành các chuỗi con. .
Bước 5. Lặp qua mảng kết hợp và in các liên kết

Làm cách nào để lấy URL thanh địa chỉ trong PHP?

Bạn có thể lấy URL đầy đủ của trang hiện tại cùng với chuỗi truy vấn, sử dụng kết hợp $_SERVER["HTTP_HOST"] và $_SERVER["REQUEST_URI"]. Nếu bạn muốn URL không có chuỗi truy vấn, cách dễ nhất để lấy nó là với $_SERVER["SCRIPT_URI"]