Jadual Kandungan
php的curl也没这么复杂,phpcurl也复杂
Rumah pembangunan bahagian belakang tutorial php php的curl也没这么复杂,phpcurl也复杂_PHP教程

php的curl也没这么复杂,phpcurl也复杂_PHP教程

Jul 13, 2016 am 10:08 AM
curl

php的curl也没这么复杂,phpcurl也复杂

许多同学在第一次使用curl的时候感觉一个头两个大(包括我在内),看着这一条条的curl_setopt函数完全摸不着头脑,不过在你花10分钟看了我的介绍后相信你以后也能轻松戏耍php的curl了

首先,请看一个curl代码(花10秒钟,略看一遍,然后跳到后文)

<span> 1</span> <?<span>php 
</span><span> 2</span> <span>$data</span> = "<soap:Envelope>[...]</soap:Envelope>"<span>; 
</span><span> 3</span> <span>$tuCurl</span> =<span> curl_init(); 
</span><span> 4</span> curl_setopt(<span>$tuCurl</span>, CURLOPT_URL, "https://example.com/path/for/soap/url/"<span>); 
</span><span> 5</span> curl_setopt(<span>$tuCurl</span>, CURLOPT_PORT , 443<span>); 
</span><span> 6</span> curl_setopt(<span>$tuCurl</span>, CURLOPT_VERBOSE, 0<span>); 
</span><span> 7</span> curl_setopt(<span>$tuCurl</span>, CURLOPT_HEADER, 0<span>); 
</span><span> 8</span> curl_setopt(<span>$tuCurl</span>, CURLOPT_SSLVERSION, 3<span>); 
</span><span> 9</span> curl_setopt(<span>$tuCurl</span>, CURLOPT_SSLCERT, <span>getcwd</span>() . "/client.pem"<span>); 
</span><span>10</span> curl_setopt(<span>$tuCurl</span>, CURLOPT_SSLKEY, <span>getcwd</span>() . "/keyout.pem"<span>); 
</span><span>11</span> curl_setopt(<span>$tuCurl</span>, CURLOPT_CAINFO, <span>getcwd</span>() . "/ca.pem"<span>); 
</span><span>12</span> curl_setopt(<span>$tuCurl</span>, CURLOPT_POST, 1<span>); 
</span><span>13</span> curl_setopt(<span>$tuCurl</span>, CURLOPT_SSL_VERIFYPEER, 1<span>); 
</span><span>14</span> curl_setopt(<span>$tuCurl</span>, CURLOPT_RETURNTRANSFER, 1<span>); 
</span><span>15</span> curl_setopt(<span>$tuCurl</span>, CURLOPT_POSTFIELDS, <span>$data</span><span>); 
</span><span>16</span> curl_setopt(<span>$tuCurl</span>, CURLOPT_HTTPHEADER, <span>array</span>("Content-Type: text/xml","SOAPAction: \"/soap/action/query\"", "Content-length: ".<span>strlen</span>(<span>$data</span><span>))); 
</span><span>17</span> 
<span>18</span> <span>$tuData</span> = curl_exec(<span>$tuCurl</span><span>); 
</span><span>19</span> <span>if</span>(!curl_errno(<span>$tuCurl</span><span>)){ 
</span><span>20</span>   <span>$info</span> = curl_getinfo(<span>$tuCurl</span><span>); 
</span><span>21</span>   <span>echo</span> 'Took ' . <span>$info</span>['total_time'] . ' seconds to send a request to ' . <span>$info</span>['url'<span>]; 
</span><span>22</span> } <span>else</span><span> { 
</span><span>23</span>   <span>echo</span> 'Curl error: ' . curl_error(<span>$tuCurl</span><span>); 
</span><span>24</span> <span>} 
</span><span>25</span> 
<span>26</span> curl_close(<span>$tuCurl</span><span>); 
</span><span>27</span> <span>echo</span> <span>$tuData</span><span>; 
</span><span>28</span> ?>
Salin selepas log masuk

WTF,这到底是在做什么?

想要学会这种“高端”的用法吗?

首先,相信你肯定知道网址大部分是由http开头的,那是因为他们需用通过http(超文本传送协议 HTTP-Hypertext transfer protocol)来进行数据传输,但是传输数据不是简单的将一句"Hello"传到服务器上就搞定的事情,发送者为了方便接受者理解发送者的实际意图以及知道发送人到底是何许人也,发送者往往要将许多额外信息一并发给接受者,就像寄信人需要在信件外套一个信封一样,信封上写着各种发信人的信息。所有的这些最终合并成了一个叫做报文(message)的玩意,也就构成了整个互联网的基础。

php的curl也没这么复杂,phpcurl也复杂_PHP教程 curl的工作就是通过http协议发送这些message (php的libcurl目前还支持https、ftp、telnet等其他协议)

现在再看代码,实际上代码只做了五件事情

下面给出使用GET和POST方法如何抓取和提交任意页面的数据
<span> 1</span> <?<span>php
</span><span> 2</span>     <span>//</span><span>初始化</span>
<span> 3</span>     <span>$curl</span> =<span> curl_init();
</span><span> 4</span>     <span>//</span><span>设置url</span>
<span> 5</span>     curl_setopt(<span>$curl</span>, CURLOPT_URL, 'http://www.baidu.com'<span>);
</span><span> 6</span>     <span>//</span><span>设置返回获取的输出为文本流</span>
<span> 7</span>     curl_setopt(<span>$curl</span>, CURLOPT_RETURNTRANSFER, <span>true</span><span>);
</span><span> 8</span>     <span>//</span><span>执行命令</span>
<span> 9</span>     <span>$data</span> = curl_exec(<span>$curl</span><span>);
</span><span>10</span>     <span>//</span><span>关闭URL请求</span>
<span>11</span>     curl_close(<span>$curl</span><span>);
</span><span>12</span>     <span>//</span><span>显示获得的数据</span>
<span>13</span>     <span>print_r</span>(<span>$data</span><span>);
</span><span>14</span> ?>
<span>15</span> 
<span>16</span> <?<span>php
</span><span>17</span>     <span>//</span><span>初始化</span>
<span>18</span>     <span>$curl</span> =<span> curl_init();
</span><span>19</span>     <span>//</span><span>设置url</span>
<span>20</span>     curl_setopt(<span>$curl</span>, CURLOPT_URL, 'http://www.baidu.com'<span>);
</span><span>21</span>     <span>//</span><span>设置返回获取的输出为文本流</span>
<span>22</span>     curl_setopt(<span>$curl</span>, CURLOPT_RETURNTRANSFER, <span>true</span><span>);
</span><span>23</span>     <span>//</span><span>设置post方式提交</span>
<span>24</span>     curl_setopt(<span>$curl</span>, CURLOPT_POST, 1<span>);
</span><span>25</span>     <span>//</span><span>设置post数据</span>
<span>26</span>     curl_setopt(<span>$curl</span>, CURLOPT_POSTFIELDS, <span>array</span>("data"=>"value"<span>);
</span><span>27</span>     <span>//</span><span>执行命令</span>
<span>28</span>     <span>$data</span> = curl_exec(<span>$curl</span><span>);
</span><span>29</span>     <span>//</span><span>关闭URL请求</span>
<span>30</span>     curl_close(<span>$curl</span><span>);
</span><span>31</span>     <span>//</span><span>打印数据</span>
<span>32</span>     <span>print_r</span>(<span>$data</span><span>);
</span><span>33</span> ?>
Salin selepas log masuk

感兴趣的同学还可以参考php官方文档,学习更多curl用法

 

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/952776.htmlTechArticlephp的curl也没这么复杂,phpcurl也复杂 许多同学在第一次使用curl的时候感觉一个头两个大(包括我在内),看着这一条条的curl_setopt函数完全...
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
2 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Repo: Cara menghidupkan semula rakan sepasukan
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Cara mendapatkan biji gergasi
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Bagaimana untuk merealisasikan penukaran bersama antara permintaan CURL dan python dalam python Bagaimana untuk merealisasikan penukaran bersama antara permintaan CURL dan python dalam python May 03, 2023 pm 12:49 PM

Kedua-dua curl dan Pythonrequests adalah alat yang berkuasa untuk menghantar permintaan HTTP. Walaupun curl ialah alat baris arahan yang membolehkan anda menghantar permintaan terus dari terminal, perpustakaan permintaan Python menyediakan cara yang lebih terprogram untuk menghantar permintaan daripada kod Python. Sintaks asas untuk menukar perintah curl kepada Pythonrequestscurl adalah seperti berikut: curl[OPTIONS]URL Apabila menukar arahan curl kepada permintaan Python, kita perlu menukar pilihan dan URL kepada kod Python. Berikut ialah contoh perintah curlPOST: curl-XPOST https://example.com/api

Tutorial mengemas kini versi curl di bawah Linux! Tutorial mengemas kini versi curl di bawah Linux! Mar 07, 2024 am 08:30 AM

Untuk mengemas kini versi curl di bawah Linux, anda boleh mengikuti langkah di bawah: Semak versi curl semasa: Pertama, anda perlu menentukan versi curl yang dipasang dalam sistem semasa. Buka terminal dan laksanakan arahan berikut: curl --version Perintah ini akan memaparkan maklumat versi curl semasa. Sahkan versi curl tersedia: Sebelum mengemas kini curl, anda perlu mengesahkan versi terkini yang tersedia. Anda boleh melawati tapak web rasmi curl (curl.haxx.se) atau sumber perisian yang berkaitan untuk mencari versi terkini curl. Muat turun kod sumber curl: Menggunakan curl atau penyemak imbas, muat turun fail kod sumber untuk versi curl pilihan anda (biasanya .tar.gz atau .tar.bz2

PHP8.1 dikeluarkan: Memperkenalkan curl untuk pemprosesan serentak berbilang permintaan PHP8.1 dikeluarkan: Memperkenalkan curl untuk pemprosesan serentak berbilang permintaan Jul 08, 2023 pm 09:13 PM

PHP8.1 dikeluarkan: Memperkenalkan curl untuk pemprosesan serentak berbilang permintaan Baru-baru ini, PHP secara rasmi mengeluarkan versi terkini PHP8.1, yang memperkenalkan ciri penting: curl untuk pemprosesan serentak berbilang permintaan. Ciri baharu ini menyediakan pembangun cara yang lebih cekap dan fleksibel untuk mengendalikan berbilang permintaan HTTP, meningkatkan prestasi dan pengalaman pengguna dengan pesat. Dalam versi sebelumnya, pengendalian berbilang permintaan selalunya memerlukan mencipta berbilang sumber curl dan menggunakan gelung untuk menghantar dan menerima data masing-masing. Walaupun kaedah ini boleh mencapai tujuan

Dari awal hingga akhir: Cara menggunakan cURL sambungan php untuk membuat permintaan HTTP Dari awal hingga akhir: Cara menggunakan cURL sambungan php untuk membuat permintaan HTTP Jul 29, 2023 pm 05:07 PM

Dari awal hingga akhir: Cara menggunakan cURL sambungan php untuk permintaan HTTP Pengenalan: Dalam pembangunan web, selalunya perlu untuk berkomunikasi dengan API pihak ketiga atau pelayan jauh lain. Menggunakan cURL untuk membuat permintaan HTTP ialah cara yang biasa dan berkesan. Artikel ini akan memperkenalkan cara menggunakan PHP untuk melanjutkan cURL untuk melaksanakan permintaan HTTP dan menyediakan beberapa contoh kod praktikal. 1. Penyediaan Pertama, pastikan php telah memasang sambungan cURL. Anda boleh melaksanakan php-m|grepcurl pada baris arahan untuk menyemak

apa itu linux curl apa itu linux curl Apr 20, 2023 pm 05:05 PM

Di Linux, curl ialah alat yang sangat praktikal untuk memindahkan data ke dan dari pelayan Ia adalah alat pemindahan fail yang menggunakan peraturan URL untuk berfungsi di bawah baris arahan ia menyokong muat naik dan muat turun fail, dan merupakan alat pemindahan yang komprehensif. Curl menyediakan banyak fungsi yang sangat berguna, termasuk akses proksi, pengesahan pengguna, muat naik dan muat turun ftp, HTTP POST, sambungan SSL, sokongan kuki, resume titik putus dan sebagainya.

Bagaimana untuk mengendalikan 301 pengalihan semula halaman web dalam PHP Curl? Bagaimana untuk mengendalikan 301 pengalihan semula halaman web dalam PHP Curl? Mar 08, 2024 am 11:36 AM

Bagaimana untuk mengendalikan 301 pengalihan semula halaman web dalam PHPCurl? Apabila menggunakan PHPCurl untuk menghantar permintaan rangkaian, anda akan sering menemui kod status 301 yang dikembalikan oleh halaman web, yang menunjukkan bahawa halaman itu telah diubah hala secara kekal. Untuk mengendalikan situasi ini dengan betul, kami perlu menambah beberapa pilihan khusus dan logik pemprosesan pada permintaan Curl. Berikut akan memperkenalkan secara terperinci cara mengendalikan 301 pengalihan semula halaman web dalam PHPCurl, dan memberikan contoh kod khusus. Prinsip pemprosesan 301 ubah hala 301 ubah hala bermakna pelayan mengembalikan 30

Bagaimana untuk menetapkan kuki dalam php curl Bagaimana untuk menetapkan kuki dalam php curl Sep 26, 2021 am 09:27 AM

Cara menetapkan kuki dalam php curl: 1. Buat fail contoh PHP 2. Tetapkan pilihan penghantaran cURL melalui fungsi "curl_setopt" 3. Lulus kuki dalam CURL.

Penyelesaian kepada ralat Fatal PHP: Panggilan ke fungsi undefined curl_setopt() Penyelesaian kepada ralat Fatal PHP: Panggilan ke fungsi undefined curl_setopt() Jun 23, 2023 am 08:18 AM

PHP ialah bahasa skrip sumber terbuka yang digunakan secara meluas yang digunakan oleh banyak laman web. Walau bagaimanapun, kadangkala anda mungkin menghadapi masalah PHPFatalerror:Calltoundefinedfunctioncurl_setopt(), yang mungkin menghalang tapak web anda daripada berfungsi dengan betul. Jadi apa sebenarnya yang menyebabkan masalah ini? Dalam PHP, curl_setopt() ialah fungsi yang sangat penting, yang digunakan untuk memanjangkan perpustakaan melalui curl

See all articles