Heim > Backend-Entwicklung > PHP-Tutorial > PHP中4种常用的抓取网络数据方法_PHP教程

PHP中4种常用的抓取网络数据方法_PHP教程

WBOY
Freigeben: 2016-07-13 09:52:02
Original
834 Leute haben es durchsucht

PHP中4种常用的抓取网络数据方法

   本小节的名称为 fsockopen,curl与file_get_contents,具体是探讨这三种方式进行网络数据输入输出的一些汇总。关于 fsockopen 前面已经谈了不少,下面开始转入其它。这里先简单罗列一下一些常见的抓取网络数据的一些方法。

  1. 用 file_get_contents 以 get 方式获取内容:

  ?

1

2

3

$url = 'http://localhost/test2.php';

$html = file_get_contents($url);

echo $html;

  2. 用fopen打开url,以get方式获取内容

  ?

1

2

3

4

5

6

7

8

9

10

$url = 'http://localhost/test2.php';

$fp = fopen($url, 'r');

stream_get_meta_data($fp);

$result = '';

while(!feof($fp))

{

$result .= fgets($fp, 1024);

}

echo "url body: $result";

fclose($fp);

  3. 用file_get_contents函数,以post方式获取url

  ?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

$data = array(

'foo'=>'bar',

'baz'=>'boom',

'site'=>'www.jb51.net',

'name'=>'nowa magic');

 

$data = http_build_query($data);

 

//$postdata = http_build_query($data);

$options = array(

'http' => array(

'method' => 'POST',

'header' => 'Content-type:application/x-www-form-urlencoded',

'content' => $data

//'timeout' => 60 * 60 // 超时时间(单位:s)

)

);

 

$url = "http://localhost/test2.php";

$context = stream_context_create($options);

$result = file_get_contents($url, false, $context);

 

echo $result;

  4、使用curl库,使用curl库之前,可能需要查看一下php.ini是否已经打开了curl扩展

  ?

1

2

3

4

5

6

7

8

9

$url = 'http://localhost/test2.php?site=jb51.net';

$ch = curl_init();

$timeout = 5;

curl_setopt ($ch, CURLOPT_URL, $url);

curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);

curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);

$file_contents = curl_exec($ch);

curl_close($ch);

echo $file_contents;

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/1011121.htmlTechArticlePHP中4种常用的抓取网络数据方法 本小节的名称为 fsockopen,curl与file_get_contents,具体是探讨这三种方式进行网络数据输入输出的一些汇总。...
Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage