Php trong một url là gì?

Để lấy URL của trang hiện tại, PHP cung cấp một biến siêu toàn cầu $_SERVER. $_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. Nó là một biến siêu toàn cầu, có nghĩa là nó luôn có sẵn trong mọi phạm vi

Nếu chúng tôi muốn có URL đầy đủ của trang, thì chúng tôi sẽ cần kiểm tra giao thức (hoặc tên lược đồ), cho dù đó là https hay http. Xem ví dụ bên dưới

đầu ra

Php trong một url là gì?

Ghi chú. Hàm isset() được sử dụng ở đây để kiểm tra xem HTTPS đã được bật hay chưa. Nó kiểm tra xem một biến có tồn tại hay không

Hoặc, chúng ta cũng có thể lấy URL đầy đủ của trang hiện tại bằng một cách khác được cung cấp trong ví dụ tiếp theo

đầu ra

Php trong một url là gì?

Để chỉ lấy tên của trang hiện tại được mở trên trình duyệt, hãy xem ví dụ bên dưới

đầu ra

Php trong một url là gì?


Các tập lệnh PHP được sử dụng để truy xuất URL của một trang web trên máy chủ web. Có nhiều cách tiếp cận để đạt được nhiệm vụ này. Trong bài viết này, bạn sẽ khám phá ba cách tiếp cận để có được URL đầy đủ trong PHP. Bạn sẽ sử dụng biến mảng siêu toàn cầu $_SERVER và các phần tử khác nhau của nó để truy xuất các phần khác nhau của URL. Sau đó, các phần đó sẽ được nối với nhau để có URL đầy đủ trong PHP. Bằng cách này, bạn sẽ nhận được đường dẫn đầy đủ của trang web hiện tại

Các biến siêu toàn cục cần thiết như $_SERVER[‘HTTPS’], $_SERVER[‘REQUEST_URI’], $_SERVER[‘SERVER_PORT’] được sử dụng để lấy URL đầy đủ trong PHP. Biến HTTPS có thể dễ dàng truy xuất giao thức trong URL của trang web. Nếu nó trả về giá trị “on”, thì giao thức đó là HTTPS. Và nếu giá trị trả về không bằng “on” thì giao thức trong URL của trang web là HTTP

Superglobals là gì?

PHP cung cấp cho bạn một số biến cụ thể được xác định trước. Các biến này giúp bạn truy xuất dữ liệu và thông tin về một yêu cầu hoặc ngữ cảnh của nó. Như tên gọi của chúng, các biến siêu toàn cầu có phạm vi siêu toàn cầu. Chúng có thể truy cập được thông qua tập lệnh PHP của bạn. Bạn có thể truy cập các biến này bằng cách sử dụng bất kỳ hàm, tệp hoặc lớp nào mà không cần thực hiện nhiều thao tác để tạo hoặc khai báo một biến mới bên trong hàm hoặc lớp của bạn. Mục đích chính mà các biến này phục vụ là giữ cũng như truy xuất dữ liệu từ một trang của ứng dụng.  

Dưới đây là danh sách các siêu toàn cầu được cung cấp bởi PHP

  • $GLOBALS

Nó là một loại biến siêu toàn cầu giúp truy cập tất cả các biến toàn cục trong tập lệnh PHP và hữu ích khi cố gắng lấy URL đầy đủ trong PHP. PHP cung cấp một mảng $GLOBALS[ ] để chứa các tham chiếu của tất cả các biến toàn cục dưới dạng các phần tử mảng. Chỉ số của mảng đại diện cho tên của các biến toàn cục

Chương trình sau minh họa biến $GLOBALS trong PHP

// khởi tạo hai biến toàn cục

$var1 = 100;

$var2 = 200;

hàm getSum() {

// lưu kết quả vào mảng toàn cục

$GLOBALS['result'] = $GLOBALS['var1'] + $GLOBALS['var2'];

}

//gọi hàm

lấy tổng();

// in kết quả được lưu trong mảng toàn cục

echo "Tổng là. ". kết quả $;

?>

Php trong một url là gì?
 

Trong chương trình trên, 2 biến toàn cục var1 và var2 được khởi tạo với 2 giá trị nguyên. Hàm getSum() lưu trữ kết quả của phép cộng hai biến toàn cục này trong một mảng TOÀN CẦU

Thêm một ngôi sao khác vào đánh giá hiệu suất của bạn

Học MIỄN PHÍ từ các chuyên gia trong ngành Bắt đầu học

Php trong một url là gì?

  • $_SERVER

Máy chủ là một siêu lớp PHP được định nghĩa là một mảng chứa dữ liệu về đường dẫn, tiêu đề, vị trí tập lệnh, v.v. Máy chủ web tự tạo các mục này trong mảng. Tuy nhiên, việc sử dụng điều này để nhận URL đầy đủ trong PHP tùy thuộc vào máy chủ của bạn, vì không phải máy chủ nào cũng cung cấp thông tin đó. Một số có thể bỏ qua chúng, trong khi những người khác có thể cung cấp thêm một số dữ liệu. Dữ liệu do máy chủ web của bạn cung cấp đôi khi được sử dụng để truy xuất dữ liệu từ biến siêu toàn cầu $_SERVER

Chương trình sau minh họa biến $_SERVER trong PHP

//in ra tên của tập tin hiện tại

tiếng vang $_SERVER['PHP_SELF'];

    echo "
";

// in ra tên của máy chủ

tiếng vang $_SERVER['SERVER_NAME'];

    echo "
";

//in ra tên host

tiếng vang $_SERVER['HTTP_HOST'];

    echo "
";

// in toàn bộ URL của trang hiện tại

tiếng vang $_SERVER['HTTP_REFERER'];

    echo "
";

// in chuỗi tác nhân người dùng

tiếng vang $_SERVER['HTTP_USER_AGENT'];

    echo "
";

//in ra đường dẫn của script

tiếng vang $_SERVER['SCRIPT_NAME'];

?>

Php trong một url là gì?
 

Trong chương trình được mô tả ở trên, các phần tử $_SERVER khác nhau được sử dụng để truy xuất thông tin về trang web trên máy chủ. Ví dụ: $_SERVER['PHP_SELF'] được sử dụng để lấy tên của tệp hiện tại, $_SERVER['SERVER_NAME'] được sử dụng để lấy tên của máy chủ, $_SERVER['HTTP_HOST'] trả về tên của

  • $_REQUEST

Yêu cầu là một siêu toàn cầu khác có chức năng thu thập và lưu trữ dữ liệu bất cứ khi nào bạn gửi biểu mẫu HTML. Đây là một trong những phương pháp phổ biến hơn để lấy URL đầy đủ trong PHP. Mảng $_REQUEST[ ] lưu trữ thông tin về $_GET, $_POST và $_COOKIE theo mặc định. Tuy nhiên, $_REQUEST không được sử dụng nhiều vì mục đích tương tự có thể được thực hiện bởi $_GET và $_POST

Chương trình sau minh họa biến $_REQUEST trong PHP

<. LOẠI TÀI LIỆU html>

// tạo một biểu mẫu HTML

    NAME:

GỬI ĐI

    

// Tập lệnh PHP sử dụng biến $_REQUEST

nếu ($_SERVER["REQUEST_METHOD"] == "POST") {

// biến siêu toàn cầu $_REQUEST

// để yêu cầu tên

$name = htmlspecialchars($_REQUEST['fname']);

nếu(trống($name)){

tiếng vang "Nhập tên";

} khác {

tiếng vang $name;

}

}

?>

Php trong một url là gì?

Trong chương trình được đề cập ở trên, bạn đã tạo một biểu mẫu HTML để lấy tên người dùng từ người dùng. Biến siêu toàn cục $_REQUEST được sử dụng để truy xuất dữ liệu và truyền dữ liệu đó tới cùng một trang, sử dụng ['PHP_SELF'], bằng cách nhấp vào nút gửi

  • $_POST

Biến siêu toàn cầu $_POST được sử dụng để truy xuất thông tin từ một biểu mẫu HTML sau khi bạn gửi nó. Mảng $_Post[ ] được chuyển đến tập lệnh PHP để lưu trữ dữ liệu được thu thập từ biểu mẫu. Phương pháp này rất an toàn theo quan điểm bảo mật vì chuỗi truy vấn không phản ánh dữ liệu khi gửi biểu mẫu và thường được coi là một cách tốt để lấy URL đầy đủ trong PHP

Chương trình sau minh họa biến $_POST trong PHP

// tạo một biểu mẫu HTML

  Name:

 

nếu ($_SERVER["REQUEST_METHOD"] == "POST") {

// đọc giá trị đầu vào

$name = $_POST['fname'];

nếu (trống($name)) {

tiếng vang "Nhập tên";

} khác {

tiếng vang $name;

}

}

?>

Php trong một url là gì?
 

Trong chương trình trên, nó tạo một biểu mẫu HTML để lấy một số dữ liệu từ trường đầu vào do người dùng nhập vào. $_POST được sử dụng để lấy các giá trị dữ liệu đầu vào và lưu trữ các giá trị này trong các biến khác, $name và $age

  • $_GET

$_GET là một biến siêu toàn cầu cũng được sử dụng để truy xuất dữ liệu từ một biểu mẫu HTML sau khi bạn gửi nó. Nó là một mảng kết hợp của các biến được chuyển đến tập lệnh PHP của bạn thông qua các tham số URL hoặc chuỗi truy vấn. Biến siêu toàn cục này hoàn toàn trái ngược với phương thức $_POST vì chuỗi truy vấn phản ánh dữ liệu khi bạn gửi biểu mẫu bằng $_GET

Đoạn mã sau minh họa biến $_GET trong PHP

GHI CHÚ. Chương trình chỉ mang tính trình diễn và đoạn mã này có thể được nhúng vào mã HTML có biểu mẫu, để lấy dữ liệu người dùng đã nhập vào biểu mẫu - về bản chất, được sửa đổi theo yêu cầu để có được URL đầy đủ trong PHP

// lấy dữ liệu bằng $_GET

$userName = $_GET['tên'];

$userAge = $_GET['tuổi'];

    echo "

This is ".$userName." of ".$userAge."


";

?>

Trong ví dụ được đề cập ở trên, biến $_GET superglobal được sử dụng để lấy thông tin do người dùng nhập vào. Thông tin này được nhập vào biểu mẫu HTML và dữ liệu được thu thập bởi biến $_GET. Dữ liệu này cũng sẽ hiển thị trong URL

  • $_FILES

$_Files là một mảng kết hợp được sử dụng để lưu trữ các mục được tải lên tập lệnh PHP thông qua phương thức HTTP Post

Chương trình sau minh họa biến $_FILES trong PHP

<. LOẠI TÀI LIỆU html>

// tạo một biểu mẫu HTML

// lấy tên file sẽ upload

    echo "Filename: " . $_FILES['file']['name']."
"; 

// lấy kiểu của file

    echo "Type : " . $_FILES['file']['type'] ."
";

// lấy kích thước của file

    echo "Size : " . $_FILES['file']['size'] ."
";

?>

Php trong một url là gì?
 

Trong chương trình được mô tả ở trên, có một biểu mẫu HTML có một nút. Khi nhấp vào nút, nó có thể tải lên một tệp. Các chi tiết của tệp được tải lên, chẳng hạn như tên tệp, loại tệp và kích thước tệp, được truy xuất bằng cách sử dụng biến siêu toàn cầu $_FILES

  • $_COOKIE

$_COOKIE được sử dụng để lưu trữ các giá trị của Cookies PHP và có thể chứng minh là một phương pháp thay thế để lấy URL đầy đủ trong PHP. Cookie là các tệp văn bản nhỏ được các trang web khác nhau sử dụng để lấy thông tin người dùng bất cứ khi nào họ truy cập trang web, chẳng hạn như tên người dùng để cá nhân hóa trang của họ

Chương trình sau minh họa biến $_COOKIE trong PHP

$setCookieName = "người dùng";

$setCookieValue = "testValue";

// 86400 sẽ bằng 1 ngày

setcookie($setCookieName, $setCookieValue, time() + (86400 * 30), "/");

nếu(. isset($_COOKIE[$setCookieName])) {

tiếng vang "Cái bánh quy '". $setCookieName. "' không được đặt. “;

} khác {

    echo "The cookie '" . $setCookieName . "' is set!
";

echo "Và giá trị của cookie là. ". $_COOKIE[$setCookieName];

}

?>

Php trong một url là gì?

Sau khi tải lại trang web, bạn thấy rằng nó sẽ đặt cookie

Php trong một url là gì?

Các biến siêu toàn cầu cần thiết

  • $_SERVER[‘HTTPS’]

$_SERVER[‘HTTPS’] là một biến siêu toàn cầu cần thiết được đặt thành một giá trị khác NULL chỉ khi nó đã truy vấn tập lệnh PHP của bạn qua giao thức HTTPS. Nói cách khác, bạn có thể nói rằng nếu bạn đã sử dụng giao thức HTTPS trên trang web hiện tại của mình, thì biến này sẽ trả về “on”

cú pháp

if(isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'bật')

tiếng vang "HTTPS";

khác

tiếng vang "HTTP";

?>

Php trong một url là gì?

  • $_SERVER[‘HTTP_HOST’]

Biến superglobal này được sử dụng để lấy tên của máy chủ web ở độ tuổi mà bạn hiện đang hoạt động

cú pháp

$domName = $_SERVER['HTTP_HOST'];

Php trong một url là gì?

  • $_SERVER[‘REQUEST_URI’]

Biến siêu toàn cầu $_SERVER[‘HTTP_HOST’] được sử dụng để lấy tên của tài nguyên mà bạn muốn lấy

cú pháp

$domName = $_SERVER['REQUEST_URI'];

Php trong một url là gì?

  • $_SERVER[‘SERVER_PORT’]

Biến siêu toàn cầu $_SERVER[‘SERVER_PORT’] được sử dụng để lấy số PORT của máy chủ mà máy chủ web của bạn đang sử dụng. Nếu bạn không chỉ định PORT, đây sẽ là mặc định và coi số cổng là '80'

cú pháp

$domName = $_SERVER['SERVER_PORT'];

Php trong một url là gì?

  • $_SERVER[‘QUERY_STRING’]

Biến siêu toàn cầu $_SERVER[‘QUERY_STRING’] được sử dụng để lấy chuỗi truy vấn của trang hiện tại của bạn, chỉ khi chuỗi truy vấn đó có sẵn trong liên kết URL.  

Khóa học Full Stack Web Developer

Để trở thành chuyên gia về MEAN Stack Xem khóa học

Php trong một url là gì?

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

Trong ví dụ này, để lấy URL đầy đủ trong PHP, bạn chia URL của bất kỳ trang web nào thành một vài phần. giao thức (HTTP hoặc HTTPS), tên miền và URL của vị trí tài nguyên. Trong chương trình minh họa bên dưới, bạn sẽ truy xuất URL của trang hiện tại thành ba phần và cuối cùng kết hợp chúng để có được URL hoàn chỉnh

Các biến siêu toàn cầu được sử dụng trong chương trình này. Biến $_SERVER[‘HTTP_HOST’] dùng để đọc tên miền của URL của trang web hiện tại. Lưu trữ tên miền được trả về trong một biến. Biến $_SERVER['REQUEST_URI'] trả về URI của vị trí tài nguyên được yêu cầu. Lưu trữ giá trị trả về trong một biến. Biến siêu toàn cục $_SERVER['HTTPS']  trả về giao thức trong URL của trang web. Để kiểm tra xem giao thức của trang web hiện tại là HTTP hay HTTPS, toán tử điều kiện được sử dụng. Đầu tiên, phương thức isset() sẽ kiểm tra xem biến siêu toàn cầu $_SERVER['HTTPS'] có được đặt hay không. Nếu giá trị được trả về bởi biến superglobal bằng “on”, thì giao thức của trang web là HTTPS, ngược lại, đó là HTTP

Chương trình sau minh họa cách hiển thị URL của trang hiện tại bằng câu lệnh if-else

// lấy tên miền của trang hiện tại

$domName = $_SERVER['HTTP_HOST'];

// lấy uri của vị trí được yêu cầu của tài nguyên

$sourceURI = $_SERVER['REQUEST_URI'];

// lấy giao thức https hoặc http của url

if(isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'bật')

$urlProtocol = "https";

khác

$urlProtocol = "http";

// bây giờ hợp nhất tất cả các biến lưu trữ URL

// địa chỉ từng phần

$urlAddress = $urlProtocol. ". //". $domName. $sourceURI;

// in ra URL

    echo "

This is the URL address of the current    page :


";

tiếng vang $urlAddress;

?>

Php trong một url là gì?

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

Ví dụ này để lấy URL đầy đủ trong PHP cũng dựa trên cách tiếp cận tương tự đã thảo luận trong ví dụ trước. Sự khác biệt duy nhất là lần này bạn sử dụng toán tử bậc ba thay vì sử dụng câu lệnh if-else truyền thống

Phương thức isset() kiểm tra giao thức của trang được yêu cầu và nếu giá trị được đặt và bằng với “on”, thì toán tử bậc ba trả về HTTPS, nếu không, nó sẽ trả về HTTP. Giá trị trả về được lưu trữ trong một biến cuối cùng được kết hợp với tất cả các phần khác của URL được truy xuất trong chương trình

Chương trình sau đây cho biết cách hiển thị URL của trang hiện tại bằng toán tử bậc ba

// lấy giao thức https hoặc http của url

$urlProtocol = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS']

== 'bật' ? . "http");

// lấy tên miền của trang hiện tại

$domName = $_SERVER['HTTP_HOST'];

// Đọc tài nguyên được yêu cầu

// lấy uri của vị trí được yêu cầu của tài nguyên

$sourceURI = $_SERVER['REQUEST_URI'];

// bây giờ hợp nhất tất cả các biến lưu trữ URL

// địa chỉ từng phần

$urlAddress = $urlProtocol. ". //". $domName. $sourceURI;

// in ra URL

    echo "

This is the URL address of the current    page :


";

tiếng vang $urlAddress;

?>

Php trong một url là gì?
 

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

Trong các cách tiếp cận trước được sử dụng để lấy URL đầy đủ trong PHP, bạn đã sử dụng $_SERVER[‘HTTPS’] để lấy giao thức của URL của trang hiện tại mà không cần chuỗi truy vấn. Trong ví dụ sau, bạn sẽ thấy việc sử dụng biến siêu toàn cầu $_SERVER[‘SERVER_PORT’] để lấy giao thức cùng với URL đầy đủ và chuỗi truy vấn

Không giống như các ví dụ trước, bạn đã thấy việc sử dụng các điều kiện logic khác nhau để lấy giao thức. Nếu $_SERVER[‘HTTPS’] trống hoặc được đặt thành "off" thì chương trình sẽ kiểm tra $_SERVER[‘SERVER_PORT’] để lấy giao thức của URL của trang hiện tại. Để tìm chuỗi truy vấn, bạn đã sử dụng biến siêu toàn cục $_SERVER[‘QUERY_STRING’]

Chương trình sau minh họa cách hiển thị URL của trang hiện tại bằng số cổng

// lấy giao thức https hoặc http của url

$getProtocol = ((. trống($_SERVER['HTTPS']) && $_SERVER['HTTPS']

= 'tắt'). $_SERVER['SERVER_PORT'] == 443)? . //". "http. //";

// lấy tên miền của trang hiện tại

$getDomain =  $_SERVER['HTTP_HOST'];

// Đọc tài nguyên được yêu cầu

// lấy uri của vị trí được yêu cầu của tài nguyên

$getResource = $_SERVER['REQUEST_URI'];

// lấy giá trị của chuỗi truy vấn

$getQuery = $_SERVER['QUERY_STRING'];

// bây giờ nối tất cả các biến lưu trữ URL

// địa chỉ từng phần

$getUrl = $getProtocol. $getDomain. $getResource;

// in ra URL

echo "

This is the URL address of the currenttrang.

". $getUrl;

//in ra chuỗi truy vấn

echo "

Printing the query string is :

". $getQuery;

?>

Php trong một url là gì?

Bạn có phải là nhà phát triển web hoặc quan tâm đến việc xây dựng một trang web? . Khám phá bản xem trước khóa học

Phần kết luận

Trong bài viết này, bạn đã biết cách truy cập URL đầy đủ bằng tập lệnh PHP. Bạn đã khám phá các siêu toàn cầu trong PHP và tận dụng chúng để có được URL hoàn chỉnh. Sau đó, bài viết này khám phá một số ví dụ như hiển thị URL bằng cách sử dụng câu lệnh có điều kiện, sử dụng toán tử bậc ba và cũng dựa trên số cổng.  

Nếu bạn muốn tiếp tục biết cách lấy URL đầy đủ trong PHP và bắt đầu hành trình học PHP toàn diện của mình, bạn có thể tham khảo video này làm hướng dẫn. Khóa học trực tuyến về Đào tạo PHP chắc chắn sẽ giúp bạn học PHP và bạn sẽ có thể xây dựng các ứng dụng web động được hướng dẫn bởi các chuyên gia trong ngành. Đối với các chuyên gia PHP, có một khóa Đào tạo Phát triển PHP Nâng cao được thiết kế đặc biệt mà bạn có thể đăng ký. Điều này sẽ cho phép bạn tìm hiểu các khái niệm PHP nâng cao như phiên, cookie, v.v.

Bước tiếp theo mà bạn có thể thực hiện là học phát triển MEAN stack và cho mình cơ hội làm việc cho những gã khổng lồ công nghệ hàng đầu, hãy xem khóa học của chúng tôi về Full Stack Web Developer - MEAN Stack. Trong khóa học này, bạn sẽ học một số kỹ năng hot nhất như Node, Mongo, v.v. điều đó sẽ giúp bạn đặt chân vào phát triển web chuyên nghiệp. Để có danh sách đầy đủ các khóa học miễn phí do Simplilearn cung cấp, hãy truy cập Khóa học miễn phí

Nếu bạn có bất kỳ câu hỏi nào cho chúng tôi về bài viết “lấy URL đầy đủ trong PHP” này, vui lòng đề cập đến chúng trong phần nhận xét và chúng tôi sẽ có các chuyên gia của chúng tôi trả lời chúng cho bạn

học tập vui vẻ

Giới thiệu về tác giả

Php trong một url là gì?
đơn giản

Simplilearn là một trong những nhà cung cấp dịch vụ đào tạo trực tuyến hàng đầu thế giới về Tiếp thị kỹ thuật số, Điện toán đám mây, Quản lý dự án, Khoa học dữ liệu, CNTT, Phát triển phần mềm và nhiều công nghệ mới nổi khác

PHP trong URL nghĩa là gì?

Thuật ngữ 'PHP' là từ viết tắt của '>PHP. Bộ tiền xử lý siêu văn bản . ' Ngôn ngữ kịch bản mã nguồn mở này là phía máy chủ và nó thường được sử dụng để phát triển trang web. Nó có thể được sử dụng để tạo các ứng dụng, trang web, v.v.

Làm cách nào để sử dụng PHP trong 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 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 .