Php curl to cong

Khi bạn đã biên dịch PHP với hỗ trợ cURL, bạn có thể bắt đầu sử dụng các hàm cURL. Ý tưởng cơ bản đằng sau các hàm cURL là bạn khởi tạo một phiên cURL bằng cách sử dụng curl_init[], sau đó bạn có thể đặt tất cả các tùy chọn của mình để truyền qua curl_setopt[], sau đó bạn có thể thực hiện phiên với curl_exec[] và sau đó bạn . Đây là một ví dụ sử dụng các hàm cURL để tìm nạp ví dụ. trang chủ com thành một tập tin

Ví dụ #1 Sử dụng mô-đun cURL của PHP để tìm nạp ví dụ. trang chủ com

$ch = curl_init["//www.example.com/"];
$fp = fopen["example_homepage.txt", "w"];

curl_setopt[$ch, CURLOPT_FILE, $fp];
curl_setopt[$ch, CURLOPT_HEADER, 0];

curl_exec[$ch];
if[curl_error[$ch]] {
fwrite[$fp, curl_error[$ch]];
}
curl_close[$ch];
fclose[$fp];
?>

It is important to notice that when using curl to post form data and you use an array for CURLOPT_POSTFIELDS option, the post will be in multipart format

$params=['name'=>'John', 'surname'=>'Doe', 'age'=>36];
$defaults = array[
CURLOPT_URL => '//myremoteservice/',
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => $params,
];
$ch = curl_init[];
curl_setopt_array[$ch, [$options + $defaults]];
?>
This produce the following post header:

--------------------------fd1c4191862e3566
Content-Disposition: form-data; name="name"

Jhon
--------------------------fd1c4191862e3566
Content-Disposition: form-data; name="surnname"

Doe
--------------------------fd1c4191862e3566
Content-Disposition: form-data; name="age"

36
--------------------------fd1c4191862e3566--

Setting CURLOPT_POSTFIELDS as follow produce a standard post header

CURLOPT_POSTFIELDS => http_build_query[$params],

Which is:
name=John&surname=Doe&age=36

This caused me 2 days of debug while interacting with a java service which was sensible to this difference, while the equivalent one in php got both format without problem.

'Ứng dụng khách cho URL', được gọi ngắn gọn là cURL, ban đầu được phát âm bằng URL viết hoa để nhấn mạnh rằng nó xử lý các URL. Nó được phát âm là. "xem URL. "

cURL là một thư viện PHP và công cụ dòng lệnh [tương tự như wget] cho phép bạn gửi và nhận tệp qua HTTP và FTP. Bạn có thể sử dụng proxy, truyền dữ liệu qua kết nối SSL, đặt cookie và thậm chí nhận các tệp được bảo vệ bằng thông tin đăng nhập

Vai trò của cURL trong PHP

Đây là một mô-đun PHP cho phép các chương trình PHP sử dụng các chức năng cuộn tròn. Khi hỗ trợ cURL của PHP được bật, đầu ra của hàm phpinfo[] sẽ bao gồm thông tin cURL. Trước khi bạn viết chương trình PHP cơ bản đầu tiên, bạn có thể kiểm tra lại nó

Chương trình sau đại học. Phát triển web đầy đủ ngăn xếp

hợp tác với Caltech CTME Đăng ký ngay

Cú pháp cơ bản cho thông tin PHP

Công dụng của cURL trong PHP

  • cURL là một phần mở rộng PHP cho phép bạn sử dụng cú pháp URL để nhận và gửi dữ liệu
  • cURL giúp kết nối giữa các trang web và tên miền khác nhau trở nên đơn giản
  • Lấy một bản sao của tài liệu của một trang web.  
  • Gửi biểu mẫu tự động, xác thực và sử dụng cookie

Chức năng của cURL trong PHP

  • curl_close - Được sử dụng để đóng phiên của cURL
  • curl_error — Nó sẽ trả về chuỗi biểu thị lỗi cho phiên hiện tại cụ thể
  • curl_exec — Sau khi phiên cURL được tạo và tất cả các tùy chọn của phiên đã được đặt, chức năng sẽ được đặt tên. Mục đích duy nhất của nó là chạy phiên CURL được xác định trước [được cung cấp bởi ch]
  • curl_file_create - Để tạo CURLFile làm đối tượng
  • curl_getinfo - Nhận thông tin về một lần chuyển cụ thể
  • curl_init — Để khởi tạo phiên cURL cho URL
  • curl_multi_close — Đóng một bộ điều khiển cURL
  • curl_pause - Tạm dừng và bỏ tạm dừng kết nối phiên
  • curl_reset - Đặt lại tất cả các tùy chọn của trình xử lý phiên libcurl
  • curl setopt[$ch, option, value] đặt tùy chọn phiên cURL được xác định bởi tham số ch. Giá trị chỉ định giá trị cho tùy chọn đã chỉ định và tùy chọn chỉ định tùy chọn nào sẽ đặt
  • Trả lại nội dung trang với curl setopt[$ch, CURLOPT RETURNTRANSFER, 1]. Nếu giá trị bằng 0, sẽ không có đầu ra nào được trả về
  • $url được truyền dưới dạng tham số cho curl setopt[$ch, CURLOPT URL, $url]. Đây là địa chỉ trang web cho máy chủ mục tiêu của bạn và URL internet mà bạn đang tìm kiếm
  • curl_version — Điều này có thể giúp lấy thông tin cho phiên bản cURL

Cách tải nội dung của trang web từ xa xuống tệp cục bộ bằng cURL trong PHP

Trong ví dụ trên, chúng tôi đang cố gắng hiển thị thông tin URL được gán cho google. com Tên URL này được gán với biến $url_name. Phiên đã bắt đầu với biến $ch_session

đầu ra

Trong ví dụ trên, chúng tôi đang cố gắng xem trang chủ của một trang web Google. Phiên đã được chỉ định với curl_init[]. Phương thức này sẽ hiển thị nội dung của một trang web được gán vào một phương thức curl_setopt[] cụ thể. Nó sẽ được lưu dưới dạng tệp html để truy cập từ xa

Khóa học mới. Phát triển Full Stack cho người mới bắt đầu

Tìm hiểu Git Command, Angular, NodeJS, Maven và hơn thế nữa Đăng ký ngay

Để tải xuống tệp từ trang web từ xa bằng cURL trong PHP

Nếu tùy chọn CURLOPT_ FILE được kích hoạt, một tệp từ xa có thể được tải xuống máy chủ của chúng tôi. Ví dụ: đoạn mã sau tải xuống "Microsoft new launch" từ trang web của công ty Microsoft và lưu nó vào máy chủ của chúng tôi dưới dạng microsoft_new_launch. html

Mã nguồn

Trong mã nguồn ở trên, url_name chẳng là gì ngoài vị trí tài nguyên ban đầu của trang web. Phiên xử lý sẽ quản lý chi tiết phiên của vị trí trang web hiện tại

Chúng tôi sử dụng lệnh curl_getinfo để biết thêm thông tin về yêu cầu. Lệnh này cho phép chúng tôi nhận thông tin kỹ thuật quan trọng về phản hồi, chẳng hạn như mã trạng thái [200 để thành công] và kích thước của tệp đã tải xuống

Mã nguồn cho trang phản hồi

Chủ Đề