Điều đó khá giống với việc tạo trang web thông thường.
mô hình bình thường cho một trang web php là:
- Người dùng nhập url
- Máy chủ lấy url, phân tích nó và thực hiện một hành động
- Trong hành động này, bạn sẽ có được/tạo ra mỗi thông tin bạn cần cho trang
- Bạn tạo trang html/php có thông tin từ hành động
- Máy chủ tạo trang hoàn toàn html và gửi lại cho người dùng
Với api, bạn chỉ cần thêm một bước mới từ 3 đến 4. Sau 3, tạo một mảng với tất cả thông tin bạn cần. Mã hóa mảng này trong json và thoát hoặc trả về giá trị này.
$info = array("info_1" => 1; "info_2" => "info_2" ... "info_n" => array(1,2,3));
exit(json_encode($info));
Đó là tất cả cho api. Đối với phía máy khách, bạn có thể gọi api bằng url. Nếu api chỉ làm việc với nhận cuộc gọi, tôi nghĩ rằng nó có thể làm một cách đơn giản (Để kiểm tra, tôi thường sử dụng curl).
$info = file_get_contents(url);
$info = json_decode($info);
Nhưng việc sử dụng thư viện curl để thực hiện và nhận cuộc gọi trở nên phổ biến hơn. Bạn có thể hỏi tôi nếu bạn cần trợ giúp với curl.
Khi nhận được thông tin từ api, bạn có thể thực hiện 4 & 5 bước.
Tìm tài liệu php cho hàm json và file_get_contents.
curl: http://fr.php.net/manual/fr/ref.curl.php
EDIT
Không, chờ đợi, tôi không nhận được nó. "trang API php" ý bạn là gì?
Api chỉ là việc tạo/phục hồi dự án của bạn. Bạn KHÔNG BAO GIỜ gửi trực tiếp kết quả html (nếu bạn đang tạo một trang web) hãy gửi một api. Bạn gọi api với url, thông tin trả về api, bạn sử dụng thông tin này để tạo kết quả cuối cùng.
ví dụ: bạn muốn viết một trang html nói xin chào xxx.Nhưng để lấy tên người dùng, bạn phải lấy thông tin từ api. Vì vậy, giả sử api của bạn có một hàm có user_id làm đối số và trả về tên của người dùng này (giả sử getUserNameById (user_id)), và bạn gọi hàm này chỉ trên một url như/api/ulr/getUser của bạn /ID.
Function getUserNameById(user_id)
{
$userName = // call in db to get the user
exit(json_encode($userName)); // maybe return work as well.
}
Từ phía client bạn làm
$username = file_get_contents(your/api/url/getUser/15); // You should normally use curl, but it simpler for the example
// So this function to this specifique url will call the api, and trigger the getUserNameById(user_id), whom give you the user name.
<html>
<body>
<p>hello <?php echo $username ?> </p>
</body>
</html>
Vì vậy, khách hàng không bao giờ truy cập trực tiếp các cơ sở dữ liệu, mà vai trò của api.
Điều đó có rõ ràng hơn không?
http://www.gen-x-design.com/archives/create-a-rest-api-with-php/ là một nguồn lực lớn về vấn đề này. –
Tôi đã viết [bài đăng trên blog] này (https://www.leaseweb.com/labs/2015/10/creating-a-simple-rest-api-in-php/) chứa một số mã ví dụ và hướng dẫn cho việc này. – mevdschee