Học về Request và Response trong PHP

Học về Request và Response trong PHP là vấn đề được nhiều lập trình viên quan tâm, bởi những kiến thức trên trường lớp là không đủ, vì vậy bài Học về Request và Response trong PHP sẽ chia sẻ tới bạn nhiều thông tin hữu ích

Mọi người vẫn hỏi tôi về việc học lập trình nói chung và PHP nói riêng có cần năng khiếu hay quá khó để tiếp cận hay không. Thì tôi có thể trả lời rằng, học lập trình cũng như việc bạn học tiếng Anh hay bất kỳ một ngôn ngữ khác, bởi lập trình...là ngôn ngữ của máy tính, để máy tính đọc và máy tính thực hiện theo yêu cầu của mình, bạn thích là học được.

Khi đọc các bài tutorials trên mạng hoặc các video học lập trình trên mạng bạn sẽ nghe đến hai khái niệm là Request và Response. Thực ra hai khái niệm này khá là đơn giản, chỉ cần hiểu request là yêu cầu từ client lên server và response là server trả kết quả về cho client, tuy nhiên mục đích mình tạo ra bài viết này là để làm sáng tỏ một số vấn đề rất hữu ích cho các bạn sau này.

Trước khi đọc bài này thì phải chắn chắn rằng bạn đã đọc bài header request và header response nhé.

1. Request là gì?

Request có thể hiểu nhanh là thông tin gửi từ client lên server. Khi bạn lên trình duyệt browser gõ một địa chỉ nào đó, ví dụ bạn gõ là Hoidapcode.com thì ngay lập tức trình duyệt sẽ dựa vào tên domain để gửi yêu cầu truy cập đến địa chỉ IP mà domain này đang trỏ tới (bạn đừng quan tâm đến domain này do ai quản lý), lúc này phía server sẽ phân tích yêu cầu và sẽ gửi luồng xử lý tới vị trí vị trí lưu trữ của mã nguồn PHP (hoặc mã nguồn bất kì) và nhiệm vụ của các mã nguồn là tiếp nhận yêu cầu, phân tích request đó và trả kết quả lại cho client.

Chúng ta có hai phương thức (2 cách) để gửi request từ client lên server đó là sử dụng phương thức GET và phương thức POST. Mình đã viết một bài về chủ đề này rồi, tuy nhiên trong series này mình sẽ trình bày rõ ràng và cụ thể hơn thông qua những bài viết tiếp theo.

Khi bạn gửi request thì sẽ có rất nhiều thông tin đính kèm theo bao gồm các thông tin của trình duyệt đang sử dụng, địa chỉ IP của mạng mà máy tính bạn đang kết nối và nhiều thông tin khác. Tất cả được chia làm hai nhóm chính sau:

Nhóm 1: Nhóm Header

Nhóm 2: Nhóm chứa dữ liệu 

Nhóm này sẽ chứa dữ liệu mà client muốn truyền tải lên server của car hai phương thức POST và GET.

Ok bây giờ mình tìm hiểu làm thế nào để lấy các thông tin đó nhé.

Lấy thông tin từ client gửi lên.

Để lấy các thông tin từ client gửi lên đó chúng ta sẽ dựa vào ba biến toàn cục $_SERVER, $_REQUEST, $_GET và $_POST. Tuy nhiên vì đây là bài đầu tiên nên mình chỉ giới thiệu biến $_SERVER thôi nhé, 3 biến còn lại mình sẽ trình bày ở một bài khác.

Các bạn tạo một file PHP bất kì và nhập vào nội dung sau:

 

  echo '<pre>';
  var_dump($_SERVER); 

 

Chạy file này lên bạn sẽ nhận được kết quả như hình sau:

Đây chính là một mảng gồm nhiều phần tử chứa các thông tin của client.

2. Response là gì?

Reponse là dữ liệu mà server trả về cho client. Ví dụ khi bạn nhập vào địa chỉ Hoidapcode.com thì kết quả trả về (response) chính là giao diện của website và các thông tin của header. Như vậy dữ liệu mà server trả về là những đoạn mã HTML kèm theo các thông tin của header ( xem hình).

Browser sẽ dựa vào các thông tin này để hiển thị trạng thái kết quả của request, còn mã HTML dùng để hiển thị giao diện của website. Nếu bạn nhập vào một URL không tồn tại thì thông tin của header sẽ không có gì (xem hình).

3. Lời kết

Ok bài này chỉ muốn giải thích cho các bạn hiểu request là gì và response là gì. Nếu bạn đọc bài hơi khó hiểu thì bạn hãy hiểu sơ lược như thế này:

  • Request: Là client gửi yêu cầu lên server
  • Response: Là kết quả từ server trả về cho client

Và sau này khi bạn thành thạo rồi thì hãy quay lại đọc bài này nhé.

Hy vọng với bài viết về Học về Request và Response trong PHP đã giải đáp giúp bạn phần nào về kiến thức lập trình PHP. Như tôi đã nói, ngôn ngữ lập trình không quan trọng bằng tư duy giải thuật, tư duy logic để giải quyết vấn đề.

Với những năm trước đây, lập trình viên là một cái nghề khó và kén chọn người học, đồng nghĩa với việc thu nhập hàng tháng của các lập trình viên luôn cao. Còn những năm gần đây, thì lập trình là môn học phổ thông, và ai cũng nên học một ngôn ngữ lập trình nào đó.

Nếu bạn còn bất kỳ câu hỏi nào trong việc học lập trình online, hãy gửi yêu cầu cho tôi qua email hoidapcode.com@gmail.com hoặc để lại comment bên dưới, tôi sẽ giải đáp trong vòng 24 giờ!

Blog hoidapcode.com là blog được tổng hợp tự động các bài học, thông tin về lập trình trên mạng internet. Nếu bạn có ý kiến hoặc đóng góp về bài viết này, hãy liên hệ với tôi!