Ngôn ngữ PHP có các hằng số siêu toàn cầu có thể chứa nhiều thông tin khác nhau. Bạn có thể xác định một trong những hằng số toàn cầu này bằng cách sử dụng một gạch dưới ở đầu tên của chúng
Đặc biệt, siêu toàn cầu mà chúng ta sẽ sử dụng được gọi là “
development.local
0“. Hằng số PHP này chứa thông tin về yêu cầu hiện tại, bao gồm tiêu đề, đường dẫn và vị trí tập lệnhSử dụng thông tin mà hằng số này cung cấp, chúng tôi sẽ có thể sử dụng PHP để lấy URL của trang hiện tại
Trước khi chúng tôi tiếp tục, có những tác động bảo mật từ việc sử dụng hầu hết các biến được lưu trữ trong hằng số này. Ví dụ: khách hàng có thể đặt cả “_______01” và “
development.local
2” thành bất kỳ giá trị nàoTrong phần tiếp theo, chúng tôi sẽ chỉ cho bạn cách bạn có thể truy xuất từng phần của
Mục lục
- Lấy URL trang hiện tại trong PHP
- Truy xuất tên máy chủ
- Nhận URI yêu cầu
- Kiểm tra HTTP hoặc HTTPS
- Để tất cả chúng cùng nhau
- Viết một hàm để lấy URL trang hiện tại
- Phần kết luận
Lấy URL trang hiện tại trong PHP
Không có một hàm hoặc biến đơn lẻ nào mà chúng ta có thể sử dụng để tạo URL trang hiện tại trong PHP. Thay vào đó, chúng tôi phải ghép URL lại với nhau bằng một số giá trị
Trong vài phần tiếp theo, chúng tôi sẽ nhanh chóng xem xét từng biến mà chúng tôi sẽ sử dụng và giới thiệu loại dữ liệu mà nó cung cấp cho chúng tôi
Nếu bạn muốn bỏ qua phần phân tích, hãy chuyển đến phần “Tổng hợp tất cả lại với nhau”
Truy xuất tên máy chủ trong PHP
Phần thông tin đầu tiên chúng tôi cần để lấy URL trang hiện tại là tên máy chủ. Tên máy chủ giống như một nhãn xác định thiết bị. Trong trường hợp URL, đây thường là tên miền của trang web
Ví dụ: tên máy chủ cho trang web của chúng tôi là “
development.local
3“Tên máy chủ được đặt trong mảng “
development.local
0” bên dưới khóa “development.local
1“. Đoạn mã nhỏ của chúng tôi bên dưới cho bạn thấy việc lấy giá trị này đơn giản như thế nào
Chạy đoạn mã nhỏ này, bạn sẽ chỉ có tên máy chủ cho trang hiện tại của mình. Cuối cùng, chúng tôi sẽ sử dụng điều này để tạo URL trang đầy đủ trong PHP
Ví dụ: chúng tôi đã nhận được giá trị sau khi chạy giá trị này trên máy chủ phát triển cục bộ của mình
development.local
Nhận URI yêu cầu trong PHP
Phần thông tin thứ hai chúng ta cần để lấy URL trang hiện tại trong PHP là URI yêu cầu. URI là một phần của URL sau tên máy chủ, bao gồm cả chuỗi truy vấn
Ví dụ: với URL “
development.local
6”, URI yêu cầu sẽ là “development.local
7“Giống như tên máy chủ, URI yêu cầu cũng có sẵn trong hằng số siêu toàn cầu “
development.local
0”Bạn có thể lấy giá trị này bằng cách sử dụng khóa “
development.local
9” của mảng “development.local
0”, như hình bên dướidevelopment.local
3Kiểm tra điều này một lần nữa trong tập lệnh nhỏ “
development.local
31” của chúng tôi, chúng tôi nhận được kết quả như saudevelopment.local
5Kiểm tra HTTP hoặc HTTPS trong PHP
Phần cuối cùng chúng ta cần lấy URL trang hiện tại trong PHP là giao thức được sử dụng cho các kết nối này. Điều này quan trọng vì nó cho chúng tôi biết liệu URL hiện tại có chứa “
development.local
32” hay “development.local
33“Giao thức có lẽ là khó truy xuất nhất, nhưng nó vẫn rất đơn giản
Để kiểm tra xem người dùng có sử dụng HTTPS cho yêu cầu hiện tại hay không, chúng ta có thể kiểm tra siêu toàn cầu “
development.local
0” và xem liệu biến “development.local
35” không được đặt thành “development.local
36“Việc sử dụng toán tử bậc ba của PHP [
development.local
37] cho phép chúng ta đơn giản hóa câu lệnh điều kiện này thành một dòng. Nếu “development.local
38” không bằng “development.local
36” chúng tôi đặt giao thức thành “development.local
50“, khác chúng tôi đặt thành “development.local
51“development.local
6Mặc dù sẽ thật tuyệt nếu đó là tất cả những gì chúng ta cần làm, nhưng có khả năng khóa “
development.local
35” không khả dụng hoặc trốngChúng tôi cũng có thể kiểm tra xem khóa “
development.local
53” có được đặt thành development.local
54 hay không [Cổng được sử dụng bởi HTTPS theo mặc định]Hãy để chúng tôi điều chỉnh lại mã, bây giờ sử dụng hàm “
development.local
55” của PHP trên “development.local
38” để xem nó có trống không. Nếu nó trống, chúng tôi sử dụng toán tử hoặc [______157] để kiểm tra xem phím “development.local
53” có được đặt thành development.local
54 hay khôngdevelopment.local
5Chạy một trong hai ví dụ mã này sẽ giúp bạn có được giao thức được sử dụng cho kết nối đến
Máy chủ phát triển của chúng tôi được thiết lập để phục vụ qua HTTPS, vì vậy chúng tôi đã nhận được kết quả sau
development.local
6Đặt tất cả lại với nhau để lấy URL trang hiện tại trong PHP
Bây giờ chúng ta đã biết cách lấy giao thức, tên máy chủ và URI yêu cầu, chúng ta có thể sử dụng nó để tạo URL toàn trang
Đầu tiên, chúng tôi sẽ tìm ra giao thức bằng cách sử dụng mảng “
development.local
0” bằng cách sử dụng cả hai phím “development.local
35” và “development.local
53”. Chúng tôi sẽ lưu trữ giao thức trong một biến có tên là “development.local
63“Sau khi chúng tôi đã tìm ra giao thức chính xác, chúng tôi có thể sử dụng giao thức đó để tạo URL trang hiện tại bằng cách sử dụng mở rộng chuỗi của PHP
Chúng tôi tạo chuỗi PHP này bằng cách sử dụng dấu ngoặc kép, tham chiếu từng biến sau trong chuỗi theo thứ tự sau “
development.local
63“, “development.local
65” và “development.local
66“Khi PHP xử lý chuỗi, nó sẽ mở rộng từng biến thành giá trị của nó
Cuối cùng, chúng tôi sử dụng từ khóa echo của PHP để xuất giá trị mà chúng tôi đã lưu trữ trong biến “
development.local
67”development.local
5Sau khi chạy đoạn PHP này, bạn sẽ nhận được đầu ra URL của trang hiện tại. Ví dụ của chúng tôi, chúng tôi nhận được URL sau
development.local
6Viết một hàm để lấy URL trang hiện tại trong PHP
Hãy để chúng tôi kết thúc vấn đề này bằng cách viết một hàm cho phép bạn lấy URL trang hiện tại bằng PHP một cách nhanh chóng
Với điều này, chúng ta đang tạo một hàm gọi là “______268“. Trong chức năng này, chúng tôi sử dụng cùng một mã trước đó
Tuy nhiên, lần này thay vì đặt URL của trang thành một biến, chúng tôi sẽ trả về dưới dạng chuỗi
development.local
8Giờ đây, bất cứ khi nào bạn cần URL trang hiện tại, bạn có thể sử dụng “
development.local
68“Phần kết luận
Trong hướng dẫn này, chúng tôi đã chỉ cho bạn cách có thể lấy URL của trang hiện tại trong PHP
Nhờ hằng số toàn cầu “
development.local
0”, tất cả thông tin chúng tôi cần để tạo URL trang đều có sẵn. Khi sử dụng điều này trong môi trường sản xuất, bạn nên xem xét việc vệ sinh các giá trị để đảm bảo chúng an toànNếu bạn có bất kỳ câu hỏi nào về cách lấy URL trang hiện tại bằng PHP, vui lòng bình luận bên dưới
Vui lòng xem nhiều hướng dẫn PHP khác của chúng tôi hoặc nếu bạn muốn học một ngôn ngữ mới, hãy xem hướng dẫn mã hóa của chúng tôi