PHP lấy URL đường dẫn hiện tại

Ghi chú. Hầu như tất cả các máy chủ web hiện đại với PHP đều hỗ trợ các biến
$doc_root = $_SERVER['DOCUMENT_ROOT'];
59 đã sử dụng, bạn cần biết. “Các mục trong mảng này được tạo bởi máy chủ web. Không có gì đảm bảo rằng mọi máy chủ web sẽ cung cấp bất kỳ thứ nào trong số này. ”  Xem hướng dẫn sử dụng PHP $_SERVER.  

Tùy thuộc vào cấu hình máy chủ của bạn, việc lấy thông tin đường dẫn chính xác có thể là một thách thức. Ví dụ: PHP không cung cấp biến sẽ trả về URL cơ sở của trang web của bạn. Để trợ giúp, bạn có thể sử dụng các đoạn mã sau để nhận đường dẫn tuyệt đối, gốc tài liệu và URL cơ sở tương ứng

Lấy đường dẫn tuyệt đối

Nếu tập lệnh của bạn được bao gồm trong

$doc_root = $_SERVER['DOCUMENT_ROOT'];
60, thì đoạn mã này

$base_dir = __DIR__;

trả về một cái gì đó như thế này [tùy thuộc vào đường dẫn máy chủ thực tế]

$doc_root = $_SERVER['DOCUMENT_ROOT'];
61

Lưu ý rằng kết quả không bao gồm dấu gạch chéo

Lấy tài liệu gốc

Cách dễ nhất, sạch nhất để lấy tài liệu gốc

$doc_root = $_SERVER['DOCUMENT_ROOT'];

mà trả về một cái gì đó giống như

$doc_root = $_SERVER['DOCUMENT_ROOT'];
62

Lưu ý rằng kết quả không bao gồm dấu gạch chéo

Ngoài ra, bạn có thể làm điều này

$doc_root = preg_replace["!${_SERVER['SCRIPT_NAME']}$!", '', $_SERVER['SCRIPT_FILENAME']];

Cách thứ nhất được ưu tiên, cách thứ hai là thông tin của bạn

Nhận URL cơ sở của tập lệnh hiện tại

Đoạn mã này trả về URL cơ sở của tập lệnh hiện tại. Vì vậy, giả sử rằng tập lệnh của chúng tôi được đưa vào bên trong

$doc_root = $_SERVER['DOCUMENT_ROOT'];
60 tại
$doc_root = $_SERVER['DOCUMENT_ROOT'];
64. Để lấy URL cơ sở, hãy áp dụng đoạn mã sau

$doc_root = $_SERVER['DOCUMENT_ROOT'];
65

$doc_root = $_SERVER['DOCUMENT_ROOT'];
66

$doc_root = $_SERVER['DOCUMENT_ROOT'];
67

$doc_root = $_SERVER['DOCUMENT_ROOT'];
68

Trong bài viết này, chúng ta sẽ xem cách lấy URL hoàn chỉnh của các trang hiện đang chạy bằng PHP, cùng với việc hiểu cách triển khai chúng thông qua các ví dụ. $_SERVER là một biến siêu toàn cầu trong PHP chứa các chi tiết liên quan đến tiêu đề, đường dẫn và vị trí tập lệnh. Trạng thái của HTTPS sẽ được lưu trong biến Global $_SERVER[‘HTTPS’]. Vì vậy, sử dụng hàm $_SERVER[‘HTTPS’] trong hàm isset[], dùng để kiểm tra xem nó có tồn tại hay không. Điều này cũng sẽ cho chúng tôi biết liệu HTTPS có được bật hay không. Kiểm tra giá trị của $_SERVER[‘HTTPS’], nếu nó “on” thì HTTPS đã được kích hoạt và chúng ta phải thêm “https” vào URL

Tiếp cận. Có một vài bước để có được URL hoàn chỉnh của trang hiện đang chạy được cung cấp bên dưới

  • Tạo một biến PHP sẽ lưu trữ URL ở định dạng chuỗi
  • Kiểm tra xem máy chủ có bật HTTPS không. Nếu có, hãy thêm “https” vào chuỗi URL. Nếu HTTPS không được bật, hãy thêm “http” vào chuỗi URL
  • Nối thêm ký hiệu thông thường, i. e. “. //” đến URL
  • Nối HTTP_HOST[Máy chủ mà chúng tôi đã yêu cầu, e. g. www. Google. com, www. tên miền của bạn. com, v.v…] tên của máy chủ
  • Nối thêm REQUEST_URI[Tài nguyên mà chúng tôi đã yêu cầu, e. g. /mục lục. php, v.v…] vào chuỗi URL

Ghi chú. Sử dụng hàm isset[] để kiểm tra xem HTTPS đã được bật hay chưa. Hàm isset[] dùng để kiểm tra biến có tồn tại hay không.
Ví dụ 1. Ví dụ này minh họa việc lấy url của trang hiện tại.

PHP




$doc_root = $_SERVER['DOCUMENT_ROOT'];
69

$doc_root = $_SERVER['DOCUMENT_ROOT'];
70
$doc_root = $_SERVER['DOCUMENT_ROOT'];
71

$doc_root = $_SERVER['DOCUMENT_ROOT'];
70
$doc_root = $_SERVER['DOCUMENT_ROOT'];
73
$doc_root = $_SERVER['DOCUMENT_ROOT'];
74
//ide.geeksforgeeks.org/
0
//ide.geeksforgeeks.org/
1
//ide.geeksforgeeks.org/
2
//ide.geeksforgeeks.org/
3
//ide.geeksforgeeks.org/
0
//ide.geeksforgeeks.org/
1
//ide.geeksforgeeks.org/
2
//ide.geeksforgeeks.org/
7
//ide.geeksforgeeks.org/
8
//ide.geeksforgeeks.org/
9

$doc_root = $_SERVER['DOCUMENT_ROOT'];
30
$doc_root = $_SERVER['DOCUMENT_ROOT'];
31
$doc_root = $_SERVER['DOCUMENT_ROOT'];
32____133
$doc_root = $_SERVER['DOCUMENT_ROOT'];
34

$doc_root = $_SERVER['DOCUMENT_ROOT'];
70
$doc_root = $_SERVER['DOCUMENT_ROOT'];
36
$doc_root = $_SERVER['DOCUMENT_ROOT'];
31
$doc_root = $_SERVER['DOCUMENT_ROOT'];
32
$doc_root = $_SERVER['DOCUMENT_ROOT'];
39
$doc_root = $_SERVER['DOCUMENT_ROOT'];
34

$doc_root = $_SERVER['DOCUMENT_ROOT'];
31

$doc_root = $_SERVER['DOCUMENT_ROOT'];
70
$doc_root = $_SERVER['DOCUMENT_ROOT'];
33

$doc_root = $_SERVER['DOCUMENT_ROOT'];
70
$doc_root = $_SERVER['DOCUMENT_ROOT'];
31
$doc_root = $_SERVER['DOCUMENT_ROOT'];
36____137
$doc_root = $_SERVER['DOCUMENT_ROOT'];
34

$doc_root = $_SERVER['DOCUMENT_ROOT'];
31

$doc_root = $_SERVER['DOCUMENT_ROOT'];
70
$doc_root = $_SERVER['DOCUMENT_ROOT'];
691

$doc_root = $_SERVER['DOCUMENT_ROOT'];
70
$doc_root = $_SERVER['DOCUMENT_ROOT'];
31
$doc_root = $_SERVER['DOCUMENT_ROOT'];
36____30
//ide.geeksforgeeks.org/
1
$doc_root = $_SERVER['DOCUMENT_ROOT'];
697
$doc_root = $_SERVER['DOCUMENT_ROOT'];
698

$doc_root = $_SERVER['DOCUMENT_ROOT'];
31

$doc_root = $_SERVER['DOCUMENT_ROOT'];
70
$doc_root = $_SERVER['DOCUMENT_ROOT'];
701

$doc_root = $_SERVER['DOCUMENT_ROOT'];
70
$doc_root = $_SERVER['DOCUMENT_ROOT'];
31
$doc_root = $_SERVER['DOCUMENT_ROOT'];
36____30
//ide.geeksforgeeks.org/
1
$doc_root = $_SERVER['DOCUMENT_ROOT'];
707
$doc_root = $_SERVER['DOCUMENT_ROOT'];
698

$doc_root = $_SERVER['DOCUMENT_ROOT'];
31

$doc_root = $_SERVER['DOCUMENT_ROOT'];
70
$doc_root = $_SERVER['DOCUMENT_ROOT'];
711

$doc_root = $_SERVER['DOCUMENT_ROOT'];
70
$doc_root = $_SERVER['DOCUMENT_ROOT'];
713
$doc_root = $_SERVER['DOCUMENT_ROOT'];
31____134

$doc_root = $_SERVER['DOCUMENT_ROOT'];
716

đầu ra

//ide.geeksforgeeks.org/

ví dụ 2. Nhận url của trang web bằng cách sử dụng $_SERVER[‘HTTP_HOST’] sẽ trả về tiêu đề máy chủ từ yêu cầu hiện tại

PHP




$doc_root = $_SERVER['DOCUMENT_ROOT'];
69

$doc_root = $_SERVER['DOCUMENT_ROOT'];
70
$doc_root = $_SERVER['DOCUMENT_ROOT'];
719

$doc_root = $_SERVER['DOCUMENT_ROOT'];
70
$doc_root = $_SERVER['DOCUMENT_ROOT'];
31
$doc_root = $_SERVER['DOCUMENT_ROOT'];
702
//ide.geeksforgeeks.org/
0
//ide.geeksforgeeks.org/
1
//ide.geeksforgeeks.org/
2
//ide.geeksforgeeks.org/
3
//ide.geeksforgeeks.org/
0
//ide.geeksforgeeks.org/
1
//ide.geeksforgeeks.org/
2
$doc_root = $_SERVER['DOCUMENT_ROOT'];
730

$doc_root = $_SERVER['DOCUMENT_ROOT'];
731
$doc_root = $_SERVER['DOCUMENT_ROOT'];
732
//ide.geeksforgeeks.org/
8
$doc_root = $_SERVER['DOCUMENT_ROOT'];
734
$doc_root = $_SERVER['DOCUMENT_ROOT'];
33
$doc_root = $_SERVER['DOCUMENT_ROOT'];
736
$doc_root = $_SERVER['DOCUMENT_ROOT'];
39
$doc_root = $_SERVER['DOCUMENT_ROOT'];
738

$doc_root = $_SERVER['DOCUMENT_ROOT'];
731
$doc_root = $_SERVER['DOCUMENT_ROOT'];
37
$doc_root = $_SERVER['DOCUMENT_ROOT'];
741____30
//ide.geeksforgeeks.org/
1
$doc_root = $_SERVER['DOCUMENT_ROOT'];
697
$doc_root = $_SERVER['DOCUMENT_ROOT'];
745

$doc_root = $_SERVER['DOCUMENT_ROOT'];
731
//ide.geeksforgeeks.org/
0
//ide.geeksforgeeks.org/
1
$doc_root = $_SERVER['DOCUMENT_ROOT'];
707
$doc_root = $_SERVER['DOCUMENT_ROOT'];
698

$doc_root = $_SERVER['DOCUMENT_ROOT'];
70
$doc_root = $_SERVER['DOCUMENT_ROOT'];
713
$doc_root = $_SERVER['DOCUMENT_ROOT'];
31____134

$doc_root = $_SERVER['DOCUMENT_ROOT'];
716

đầu ra

//ide.geeksforgeeks.org/

Đầu ra của đoạn mã trên là https. // ý kiến. chuyên viên máy tính. org/ thay vì https. // ý kiến. chuyên viên máy tính. tổ chức/chỉ mục. php. Để khắc phục sự cố này, cần thay thế $_SERVER[‘REQUEST_URI’] bằng $_SERVER[‘PHP_SELF’]

chương trình 3. Ví dụ này đang hiển thị URL tệp PHP hiện đang thực thi

PHP




$doc_root = $_SERVER['DOCUMENT_ROOT'];
69

//ide.geeksforgeeks.org/
07

//ide.geeksforgeeks.org/
08
//ide.geeksforgeeks.org/
09

//ide.geeksforgeeks.org/
08
$doc_root = $_SERVER['DOCUMENT_ROOT'];
73
$doc_root = $_SERVER['DOCUMENT_ROOT'];
74
//ide.geeksforgeeks.org/
0_______31____32
//ide.geeksforgeeks.org/
3
//ide.geeksforgeeks.org/
0
//ide.geeksforgeeks.org/
1
//ide.geeksforgeeks.org/
2
//ide.geeksforgeeks.org/
7
//ide.geeksforgeeks.org/
8
//ide.geeksforgeeks.org/
22

//ide.geeksforgeeks.org/
23
$doc_root = $_SERVER['DOCUMENT_ROOT'];
31
$doc_root = $_SERVER['DOCUMENT_ROOT'];
32______133
$doc_root = $_SERVER['DOCUMENT_ROOT'];
34

//ide.geeksforgeeks.org/
08
$doc_root = $_SERVER['DOCUMENT_ROOT'];
36
$doc_root = $_SERVER['DOCUMENT_ROOT'];
31
$doc_root = $_SERVER['DOCUMENT_ROOT'];
32
$doc_root = $_SERVER['DOCUMENT_ROOT'];
39
$doc_root = $_SERVER['DOCUMENT_ROOT'];
34

//ide.geeksforgeeks.org/
07

//ide.geeksforgeeks.org/
08
//ide.geeksforgeeks.org/
36

//ide.geeksforgeeks.org/
08
//ide.geeksforgeeks.org/
38

//ide.geeksforgeeks.org/
08
$doc_root = $_SERVER['DOCUMENT_ROOT'];
31
$doc_root = $_SERVER['DOCUMENT_ROOT'];
36
$doc_root = $_SERVER['DOCUMENT_ROOT'];
37
$doc_root = $_SERVER['DOCUMENT_ROOT'];
34

//ide.geeksforgeeks.org/
07

//ide.geeksforgeeks.org/
08
//ide.geeksforgeeks.org/
46

//ide.geeksforgeeks.org/
08
//ide.geeksforgeeks.org/
48

//ide.geeksforgeeks.org/
08
$doc_root = $_SERVER['DOCUMENT_ROOT'];
31
$doc_root = $_SERVER['DOCUMENT_ROOT'];
36
//ide.geeksforgeeks.org/
0
//ide.geeksforgeeks.org/
1
$doc_root = $_SERVER['DOCUMENT_ROOT'];
697
$doc_root = $_SERVER['DOCUMENT_ROOT'];
698

//ide.geeksforgeeks.org/
07

//ide.geeksforgeeks.org/
08
//ide.geeksforgeeks.org/
58

//ide.geeksforgeeks.org/
08
//ide.geeksforgeeks.org/
60

//ide.geeksforgeeks.org/
08
$doc_root = $_SERVER['DOCUMENT_ROOT'];
31
$doc_root = $_SERVER['DOCUMENT_ROOT'];
36
//ide.geeksforgeeks.org/
0
//ide.geeksforgeeks.org/
1
//ide.geeksforgeeks.org/
66
$doc_root = $_SERVER['DOCUMENT_ROOT'];
698

//ide.geeksforgeeks.org/
07

//ide.geeksforgeeks.org/
08
//ide.geeksforgeeks.org/
70

//ide.geeksforgeeks.org/
08
$doc_root = $_SERVER['DOCUMENT_ROOT'];
713
$doc_root = $_SERVER['DOCUMENT_ROOT'];
31
$doc_root = $_SERVER['DOCUMENT_ROOT'];
34

$doc_root = $_SERVER['DOCUMENT_ROOT'];
716

đầu ra

$doc_root = $_SERVER['DOCUMENT_ROOT'];
3

chương trình 4. Ví dụ này mô tả việc lấy url hoàn chỉnh của trang web

PHP




$doc_root = $_SERVER['DOCUMENT_ROOT'];
69

//ide.geeksforgeeks.org/
77

//ide.geeksforgeeks.org/
08
//ide.geeksforgeeks.org/
09

//ide.geeksforgeeks.org/
08
$doc_root = $_SERVER['DOCUMENT_ROOT'];
31
$doc_root = $_SERVER['DOCUMENT_ROOT'];
702
//ide.geeksforgeeks.org/
0
//ide.geeksforgeeks.org/
1
//ide.geeksforgeeks.org/
2
//ide.geeksforgeeks.org/
3
//ide.geeksforgeeks.org/
0
//ide.geeksforgeeks.org/
1
//ide.geeksforgeeks.org/
2
//ide.geeksforgeeks.org/
90

//ide.geeksforgeeks.org/
91
$doc_root = $_SERVER['DOCUMENT_ROOT'];
732
//ide.geeksforgeeks.org/
8
$doc_root = $_SERVER['DOCUMENT_ROOT'];
734
$doc_root = $_SERVER['DOCUMENT_ROOT'];
33
$doc_root = $_SERVER['DOCUMENT_ROOT'];
736______139
//ide.geeksforgeeks.org/
98
$doc_root = $_SERVER['DOCUMENT_ROOT'];
37
$doc_root = $_SERVER['DOCUMENT_ROOT'];
300

//ide.geeksforgeeks.org/
91
//ide.geeksforgeeks.org/
0
//ide.geeksforgeeks.org/
1
$doc_root = $_SERVER['DOCUMENT_ROOT'];
697
$doc_root = $_SERVER['DOCUMENT_ROOT'];
305
//ide.geeksforgeeks.org/
0
//ide.geeksforgeeks.org/
1
//ide.geeksforgeeks.org/
66
$doc_root = $_SERVER['DOCUMENT_ROOT'];
698

//ide.geeksforgeeks.org/
07

//ide.geeksforgeeks.org/
08
$doc_root = $_SERVER['DOCUMENT_ROOT'];
312

//ide.geeksforgeeks.org/
08
$doc_root = $_SERVER['DOCUMENT_ROOT'];
713
$doc_root = $_SERVER['DOCUMENT_ROOT'];
31
$doc_root = $_SERVER['DOCUMENT_ROOT'];
34

$doc_root = $_SERVER['DOCUMENT_ROOT'];
716

đầu ra

$doc_root = $_SERVER['DOCUMENT_ROOT'];
3

PHP là ngôn ngữ kịch bản phía máy chủ được thiết kế dành riêng cho phát triển web. Bạn có thể học PHP từ đầu bằng cách làm theo Hướng dẫn PHP và Ví dụ về PHP này

Làm cách nào để lấy URL thư mục hiện tại trong PHP?

$_SERVER là một biến có sẵn của PHP, được sử dụng để lấy URL của trang hiện tại. .

Chủ Đề