Làm cách nào để lấy tham số từ yêu cầu GET trong PHP?

❮ Mô-đun Yêu cầu


Thí dụ

Gửi yêu cầu tới một trang web và trả lại mã trạng thái

yêu cầu nhập khẩu

x = yêu cầu. nhận ('https. //w3schools. com')
in(x. status_code)

Chạy ví dụ »


Định nghĩa và cách sử dụng

Phương thức get() gửi yêu cầu GET đến url đã chỉ định


cú pháp

yêu cầu. get(url, params={key. giá trị}, đối số)

args có nghĩa là không hoặc nhiều đối số được đặt tên trong bảng tham số bên dưới. Thí dụ

yêu cầu. nhận (url, thời gian chờ = 2. 50)


Giá trị tham số

Tham sốMô tảurlDùng thửBắt buộc. Url của requestparamsDùng thửTùy chọn. Một từ điển, danh sách các bộ dữ liệu hoặc byte để gửi dưới dạng chuỗi truy vấn
Default Noneallow_redirectsTry itOptional. Boolean để bật/tắt chuyển hướng
Mặc định True (cho phép chuyển hướng)authDùng thửTùy chọn. Một bộ để kích hoạt xác thực HTTP nhất định
Mặc định Nonechứng chỉDùng thửTùy chọn. Một Chuỗi hoặc Tuple chỉ định tệp hoặc khóa chứng chỉ
Mặc định NonecookiesDùng thửTùy chọn. Từ điển cookie để gửi đến url đã chỉ định
Tiêu đề None mặc địnhDùng thửTùy chọn. Một từ điển các tiêu đề HTTP để gửi đến url đã chỉ định
Mặc định NoneproxiesDùng thửTùy chọn. Một từ điển của giao thức cho url proxy
Mặc định NonestreamDùng thửTùy chọn. Một dấu hiệu Boolean nếu phản hồi nên được tải xuống ngay lập tức (Sai) hoặc phát trực tuyến (Đúng)
Thời gian chờ mặc định của FalseDùng thửTùy chọn. Một số hoặc một bộ, cho biết cần đợi bao nhiêu giây để máy khách tạo kết nối và/hoặc gửi phản hồi
Mặc định None có nghĩa là yêu cầu sẽ tiếp tục cho đến khi kết nối bị đóngxác minhHãy thử
Dùng thửTùy chọn. Chỉ báo Boolean hoặc Chuỗi để xác minh chứng chỉ TLS của máy chủ hay không
Mặc định True

Giá trị trả về

Phương thức get() trả về một yêu cầu. đối tượng phản hồi


❮ Mô-đun Yêu cầu


PHP $_GET là một biến siêu toàn cầu PHP được sử dụng để thu thập dữ liệu biểu mẫu sau khi gửi biểu mẫu HTML với method="get"

$_GET cũng có thể thu thập dữ liệu được gửi trong URL

Giả sử chúng ta có một trang HTML chứa một siêu liên kết với các tham số


Kiểm tra $GET


Khi người dùng nhấp vào liên kết "Test $GET", các thông số "subject" và "web" được gửi đến "test_get. php", và sau đó bạn có thể truy cập các giá trị của chúng trong "test_get. php" với $_GET

Để lấy tham số từ chuỗi URL trong PHP, mã như sau−

Thí dụ

Bản thử trực tiếp

đầu ra

Điều này sẽ tạo ra đầu ra sau−

Email = [email protected]

Thí dụ

Bây giờ chúng ta hãy xem một ví dụ khác -

Bản thử trực tiếp

đầu ra

Điều này sẽ tạo ra đầu ra sau−

Email = demo

Làm cách nào để lấy tham số từ yêu cầu GET trong PHP?


Làm cách nào để lấy tham số từ yêu cầu GET trong PHP?

Hướng dẫn yêu cầu GET/POST trong PHP chỉ ra cách tạo và xử lý các yêu cầu GET và POST trong PHP. Chúng tôi sử dụng các khung công tác PHP và Symfony, Slim và Laravel đơn giản

$ php -v
php -v
PHP 8.1.2 (cli) (built: Aug  8 2022 07:28:23) (NTS)
...

Chúng tôi sử dụng phiên bản PHP 8. 1. 2

Giao thức truyền tải siêu văn bản (HTTP) là một giao thức ứng dụng cho các hệ thống thông tin siêu phương tiện, cộng tác, phân tán. Giao thức HTTP là nền tảng giao tiếp dữ liệu cho World Wide Web

HTTP NHẬN

Phương thức HTTP GET yêu cầu biểu diễn tài nguyên đã chỉ định

NHẬN yêu cầu

  • chỉ nên được sử dụng để yêu cầu một tài nguyên
  • thông số được hiển thị trong URL
  • có thể được lưu trữ
  • vẫn còn trong lịch sử trình duyệt
  • có thể được đánh dấu
  • không bao giờ nên được sử dụng khi xử lý dữ liệu nhạy cảm
  • có giới hạn chiều dài

Phương thức HTTP POST gửi dữ liệu đến máy chủ. Nó thường được sử dụng khi tải lên một tệp hoặc khi gửi một biểu mẫu web đã hoàn thành

POST yêu cầu

  • nên được sử dụng để tạo ra một tài nguyên
  • thông số không được hiển thị trong URL
  • không bao giờ được lưu trữ
  • không lưu lại trong lịch sử trình duyệt
  • không thể được đánh dấu
  • có thể được sử dụng khi xử lý dữ liệu nhạy cảm
  • không có giới hạn chiều dài

PHP $_GET và $_POST

PHP cung cấp các siêu toàn cầu

The example retrieves the name and message parameters from the $_POST variable.

$ php -S localhost:8000 post_req.php
9 và
$ curl -d "name=Lucia&message=Cau" localhost:8000
Lucia says: Cau
0.

The example retrieves the name and message parameters from the $_POST variable.

$ php -S localhost:8000 post_req.php
9 là một mảng kết hợp gồm các biến được chuyển đến tập lệnh hiện tại thông qua các tham số URL (chuỗi truy vấn).
$ curl -d "name=Lucia&message=Cau" localhost:8000
Lucia says: Cau
0 là một mảng kết hợp gồm các biến được chuyển đến tập lệnh hiện tại thông qua phương thức HTTP POST khi sử dụng
$ curl -d "name=Lucia&message=Cau" localhost:8000
Lucia says: Cau
3 hoặc
$ curl -d "name=Lucia&message=Cau" localhost:8000
Lucia says: Cau
4 làm Loại nội dung HTTP trong yêu cầu

Trong ví dụ sau, chúng tôi tạo một yêu cầu GET bằng công cụ curl và xử lý yêu cầu bằng PHP thuần túy

The example retrieves the name and message parameters from the $_GET variable.

$ php -S localhost:8000 get_req.php

Chúng tôi bắt đầu máy chủ

$ curl 'localhost:8000/?name=Lucia&message=Cau'
Lucia says: Cau
$ curl 'localhost:8000/?name=Lucia'
Lucia says: hello there

Chúng tôi gửi hai yêu cầu GET với curl

PHP POST yêu cầu

Trong ví dụ sau, chúng tôi tạo một yêu cầu POST bằng công cụ curl và xử lý yêu cầu bằng PHP thuần túy

The example retrieves the name and message parameters from the $_POST variable.

$ php -S localhost:8000 post_req.php

Chúng tôi bắt đầu máy chủ

Quảng cáo
$ curl -d "name=Lucia&message=Cau" localhost:8000
Lucia says: Cau

Chúng tôi gửi một yêu cầu POST với curl

Symfony cung cấp thành phần

$ curl -d "name=Lucia&message=Cau" localhost:8000
Lucia says: Cau
5 cho phép chúng tôi tạo các yêu cầu HTTP trong PHP

$ composer req symfony/http-client

Chúng tôi cài đặt thành phần

$ curl -d "name=Lucia&message=Cau" localhost:8000
Lucia says: Cau
6

request('GET', 'http://localhost:8000', [
    'query' => [
        'name' => 'Lucia',
        'message' => 'Cau',
    ]
]);

$content = $response->getContent();
echo $content . "\n";

Ví dụ gửi một yêu cầu GET với hai tham số truy vấn tới

$ curl -d "name=Lucia&message=Cau" localhost:8000
Lucia says: Cau
7

$ php -S localhost:8000 get_req.php

Chúng tôi bắt đầu máy chủ

$ php send_get_req.php 
Lucia says: Cau

Chúng tôi chạy tập lệnh

$ curl -d "name=Lucia&message=Cau" localhost:8000
Lucia says: Cau
8

PHP gửi yêu cầu POST với Symfony HttpClient

Trong ví dụ sau, chúng tôi gửi yêu cầu POST với Symfony HttpClient

request('POST', 'http://localhost:8000', [
    'body' => [
        'name' => 'Lucia',
        'message' => 'Cau',
    ]
]);

$content = $response->getContent();
echo $content . "\n";

Ví dụ gửi một yêu cầu POST với hai tham số tới

$ curl -d "name=Lucia&message=Cau" localhost:8000
Lucia says: Cau
9

The example retrieves the name and message parameters from the $_GET variable.

$ php -S localhost:8000 get_req.php
0

Chúng tôi bắt đầu máy chủ

The example retrieves the name and message parameters from the $_GET variable.

$ php -S localhost:8000 get_req.php
1

Chúng tôi chạy tập lệnh

$ composer req symfony/http-client
0

PHP NHẬN yêu cầu trong Symfony

Trong ví dụ sau, chúng tôi xử lý yêu cầu GET trong ứng dụng Symfony

The example retrieves the name and message parameters from the $_GET variable.

$ php -S localhost:8000 get_req.php
2

Một ứng dụng mới được tạo

The example retrieves the name and message parameters from the $_GET variable.

$ php -S localhost:8000 get_req.php
3

Chúng tôi cài đặt các thành phần

$ composer req symfony/http-client
1 và
$ composer req symfony/http-client
2

The example retrieves the name and message parameters from the $_GET variable.

$ php -S localhost:8000 get_req.php
4

Chúng tôi tạo một bộ điều khiển mới

src/Trình điều khiển/Trình điều khiển gia đình. php

The example retrieves the name and message parameters from the $_GET variable.

$ php -S localhost:8000 get_req.php
5

Bên trong phương thức

$ composer req symfony/http-client
3
$ composer req symfony/http-client
4, chúng tôi nhận các tham số truy vấn và tạo phản hồi

The example retrieves the name and message parameters from the $_GET variable.

$ php -S localhost:8000 get_req.php
6

Tham số GET được truy xuất với

$ composer req symfony/http-client
5. Tham số thứ hai của phương thức là một giá trị mặc định được sử dụng khi không có

The example retrieves the name and message parameters from the $_GET variable.

$ php -S localhost:8000 get_req.php
7

Chúng tôi bắt đầu máy chủ

The example retrieves the name and message parameters from the $_GET variable.

$ php -S localhost:8000 get_req.php
8

Chúng tôi tạo một yêu cầu GET với curl

Trong ví dụ sau, chúng tôi xử lý yêu cầu POST trong ứng dụng Symfony

src/Trình điều khiển/Trình điều khiển gia đình. php

The example retrieves the name and message parameters from the $_GET variable.

$ php -S localhost:8000 get_req.php
9

Chúng tôi thay đổi bộ điều khiển để xử lý yêu cầu POST

$ curl 'localhost:8000/?name=Lucia&message=Cau'
Lucia says: Cau
$ curl 'localhost:8000/?name=Lucia'
Lucia says: hello there
0

Tham số POST được truy xuất với

$ composer req symfony/http-client
6. Tham số thứ hai của phương thức là một giá trị mặc định được sử dụng khi không có

The example retrieves the name and message parameters from the $_GET variable.

$ php -S localhost:8000 get_req.php
7

Chúng tôi bắt đầu máy chủ

$ curl 'localhost:8000/?name=Lucia&message=Cau'
Lucia says: Cau
$ curl 'localhost:8000/?name=Lucia'
Lucia says: hello there
2

Chúng tôi tạo một yêu cầu POST với curl

Trong ví dụ sau, chúng tôi sẽ xử lý yêu cầu GET trong khung Slim

$ curl 'localhost:8000/?name=Lucia&message=Cau'
Lucia says: Cau
$ curl 'localhost:8000/?name=Lucia'
Lucia says: hello there
3

Chúng tôi cài đặt các gói

$ composer req symfony/http-client
7,
$ composer req symfony/http-client
8 và
$ composer req symfony/http-client
9

$ curl 'localhost:8000/?name=Lucia&message=Cau'
Lucia says: Cau
$ curl 'localhost:8000/?name=Lucia'
Lucia says: hello there
4

Chúng tôi nhận các tham số và trả về phản hồi trong Slim

$ curl 'localhost:8000/?name=Lucia&message=Cau'
Lucia says: Cau
$ curl 'localhost:8000/?name=Lucia'
Lucia says: hello there
5

Tham số truy vấn được truy xuất với

request('GET', 'http://localhost:8000', [
    'query' => [
        'name' => 'Lucia',
        'message' => 'Cau',
    ]
]);

$content = $response->getContent();
echo $content . "\n";
0;

$ curl 'localhost:8000/?name=Lucia&message=Cau'
Lucia says: Cau
$ curl 'localhost:8000/?name=Lucia'
Lucia says: hello there
6

Chúng tôi viết đầu ra cho phần phản hồi với

request('GET', 'http://localhost:8000', [
    'query' => [
        'name' => 'Lucia',
        'message' => 'Cau',
    ]
]);

$content = $response->getContent();
echo $content . "\n";
1

$ curl 'localhost:8000/?name=Lucia&message=Cau'
Lucia says: Cau
$ curl 'localhost:8000/?name=Lucia'
Lucia says: hello there
7

Chúng tôi bắt đầu máy chủ

The example retrieves the name and message parameters from the $_GET variable.

$ php -S localhost:8000 get_req.php
8

Chúng tôi tạo một yêu cầu GET với curl

Trong ví dụ sau, chúng tôi sẽ xử lý một yêu cầu POST trong khung Slim

$ curl 'localhost:8000/?name=Lucia&message=Cau'
Lucia says: Cau
$ curl 'localhost:8000/?name=Lucia'
Lucia says: hello there
9

Chúng tôi nhận các tham số POST và trả về phản hồi trong Slim

The example retrieves the name and message parameters from the $_POST variable.

$ php -S localhost:8000 post_req.php
0

Các tham số POST được truy xuất với

request('GET', 'http://localhost:8000', [
    'query' => [
        'name' => 'Lucia',
        'message' => 'Cau',
    ]
]);

$content = $response->getContent();
echo $content . "\n";
2

$ curl 'localhost:8000/?name=Lucia&message=Cau'
Lucia says: Cau
$ curl 'localhost:8000/?name=Lucia'
Lucia says: hello there
7

Chúng tôi bắt đầu máy chủ

$ curl 'localhost:8000/?name=Lucia&message=Cau'
Lucia says: Cau
$ curl 'localhost:8000/?name=Lucia'
Lucia says: hello there
2

Chúng tôi tạo một yêu cầu POST với curl

PHP NHẬN yêu cầu trong Laravel

Trong ví dụ sau, chúng tôi xử lý một yêu cầu GET trong Laravel

The example retrieves the name and message parameters from the $_POST variable.

$ php -S localhost:8000 post_req.php
3

Chúng tôi tạo một ứng dụng Laravel mới

The example retrieves the name and message parameters from the $_POST variable.

$ php -S localhost:8000 post_req.php
4

Chúng tôi nhận các tham số GET và tạo phản hồi

Quảng cáo

The example retrieves the name and message parameters from the $_POST variable.

$ php -S localhost:8000 post_req.php
5

Chúng tôi bắt đầu máy chủ

The example retrieves the name and message parameters from the $_POST variable.

$ php -S localhost:8000 post_req.php
6

Chúng tôi gửi một yêu cầu NHẬN với curl

quảng cáo

Trong ví dụ sau, chúng tôi gửi yêu cầu POST từ biểu mẫu HTML

tài nguyên/lượt xem/trang chủ. lưỡi. php

The example retrieves the name and message parameters from the $_POST variable.

$ php -S localhost:8000 post_req.php
7

Chúng tôi có biểu mẫu POST trong mẫu Blade. Laravel yêu cầu bảo vệ CSRF cho các yêu cầu POST. Chúng tôi kích hoạt tính năng bảo vệ CSRF với

request('GET', 'http://localhost:8000', [
    'query' => [
        'name' => 'Lucia',
        'message' => 'Cau',
    ]
]);

$content = $response->getContent();
echo $content . "\n";
3

The example retrieves the name and message parameters from the $_POST variable.

$ php -S localhost:8000 post_req.php
8

Chúng tôi xác thực và truy xuất các tham số POST và gửi chúng trong phản hồi. Ví dụ này nên được thử nghiệm trong một trình duyệt

Trong hướng dẫn này, chúng ta đã làm việc với các yêu cầu GET và POST trong PHP, Symfony, Slim và Laravel đơn giản

Yêu cầu nhận có thể có tham số truy vấn không?

Đối với yêu cầu GET, đầu vào chỉ có thể được chỉ định làm tham số truy vấn , vì yêu cầu GET không thể có phần thân. Ví dụ này hiển thị một yêu cầu GET trên tài nguyên tìm kiếm, với hai tham số truy vấn trong chuỗi truy vấn.

Làm cách nào để lấy dữ liệu từ một yêu cầu trong PHP?

PHP $_GET là biến siêu toàn cầu PHP được sử dụng để thu thập dữ liệu biểu mẫu sau khi gửi biểu mẫu HTML bằng method="get". $_GET cũng có thể thu thập dữ liệu được gửi trong URL. Khi người dùng nhấp vào liên kết "Test $GET", các thông số "subject" và "web" được gửi đến "test_get.

Làm cách nào chúng ta có thể sử dụng biến yêu cầu $_ GET $_ POST $_ trong PHP?

Làm thế nào để sử dụng nó? . Sau đó, trong php, bạn có thể sử dụng biến $_POST để lấy dữ liệu mà bạn muốn. Cú pháp của $_POST là ($_POST['tên của trường biểu mẫu ở đây']) .

Làm cách nào để lấy biến trong PHP?

Biến PHP .
Một biến bắt đầu bằng dấu $, theo sau là tên của biến
Tên biến phải bắt đầu bằng một chữ cái hoặc ký tự gạch dưới
Tên biến không được bắt đầu bằng số
Tên biến chỉ có thể chứa các ký tự chữ và số và dấu gạch dưới (A-z, 0-9 và _ )