<?
$files = file_get_contents('http://www.kezhan.net');
$img=preg_match_all("/<img class='pic1' src='\/tupian\/UploadFiles_1127\/200809\/(.*?).jpg'  width='130' height='90' border='0'>/",$files,$imgs);
for ($i=0;$i<count($imgs[0]);$i++)
{

echo "http://www.kezhan.net/tupian/UploadFiles_1127/200809/".$imgs[1][$i].".jpg \n";
}
?>结果:http://www.kezhan.net/tupian/UploadFiles_1127/200809/2008090900435853_S.jpg 
http://www.kezhan.net/tupian/UploadFiles_1127/200809/2008090900313900_S.jpg 
http://www.kezhan.net/tupian/UploadFiles_1127/200809/2008090900435853_S.jpg 
http://www.kezhan.net/tupian/UploadFiles_1127/200809/2008090900313900_S.jpg 
http://www.kezhan.net/tupian/UploadFiles_1127/200809/2008090900435853_S.jpg 
http://www.kezhan.net/tupian/UploadFiles_1127/200809/2008090900313900_S.jpg 
http://www.kezhan.net/tupian/UploadFiles_1127/200809/2008090900313900_S.jpg 
http://www.kezhan.net/tupian/UploadFiles_1127/200809/2008090900435853_S.jpg 
http://www.kezhan.net/tupian/UploadFiles_1127/200809/2008090900313900_S.jpg 结分

解决方案 »

  1.   

    额,不好意思,我发完贴后感觉没有防盗,因为我用这个测试http://www.kezhan.net/tupian/UploadFiles_1127/200809/2008090900313900_S.jpg能显示,后来用别的试试看,不行!
      

  2.   

    破防盗链还是比较容易的$url = 'http://www.kezhan.net/tupian/UploadFiles_1127/200809/2008090900313900_S.jpg';
    $opts = array(
      'http'=>array(
        'header'=>"Referer: http://www.kezhan.net/\r\n"
      )
    );
    $context = stream_context_create($opts);
    header( 'Content-Type: image/jpeg' );
    die( file_get_contents( $url,FALSE,$context) );
      

  3.   

    呵呵,发个Referer 头告诉他是本站访问.不知道有没有更好的防盗链方法,期待楼下...
      

  4.   


    不错不错,但是还需要保存一下
    $url = 'http://www.kezhan.net/tupian/UploadFiles_1127/200809/2008090900435853.jpg';
    $opts = array(
      'http'=>array(
        'header'=>"Referer: http://www.kezhan.net/\r\n"
      )
    );
    $context = stream_context_create($opts);
    header( 'Content-Type: image/jpeg' );
    $fileResource = @file_get_contents( $url,FALSE,$context) ;file_put_contents("test.jpg", $fileResource); 
      

  5.   

    为什么我这边有错误显示呢? 是不是版本的问题,我的是php4.0
    楼上的代码运行如下:
    <br />
    <b>Fatal error</b>:  Call to undefined function:  file_put_contents() in <b>d:\easyphp1-8\www\ceshi\1.php</b> on line <b>12</b><br />
      

  6.   

    Warning: Cannot modify header information - headers already sent by 
      

  7.   


    以上问题解决办法:
    打开php.ini,找到output_buffering然后设为on
    那位可以来个遍历?