<?php   
$url_a=' http://dsc04.taobao.com/i4/fc0/900/fc490158b3ee5ea18969ef0afbf43315/T1wTlaXaJqXXXXXXXX.desc|var^desc;sign^152e7dbb9f165ef6e78acb28c423d4c0;lang^gbk;t^1252120527';
$handel=fopen("$url_a","r");
$file_a = stream_get_contents($handel);echo($file_a);
?> 
朋友测试说可以打开  我的电脑是XP系统下 用了 Dedecms提供的PHP环境安装包 测试的时候提示 
Warning: fopen( http://dsc04.taobao.com/i4/fc0/900/fc490158b3ee5ea18969ef0afbf43315/T1wTlaXaJqXXXXXXXX.desc|var^desc;sign^152e7dbb9f165ef6e78acb28c423d4c0;lang^gbk;t^1252120527) [function.fopen]: failed to open stream: Invalid argument in D:\PC_webserver\phproot\demo.php on line 3Warning: stream_get_contents() expects parameter 1 to be resource, boolean given in D:\PC_webserver\phproot\demo.php on line 4希望高手能给小弟一点提示  谢谢了

解决方案 »

  1.   

    fopen参数不对。fopen('c:\\test.php','rb');要这中类型
      

  2.   

    1.php.ini中的allow_url_fopen要设置成on
    2.你的url格式不对,
    $url_a=' http://dsc04.taobao.com/i4/fc0/900/fc490158b3ee5ea18969ef0afbf43315/T1wTlaXaJqXXXXXXXX.desc|var^desc;sign^152e7dbb9f165ef6e78acb28c423d4c0;lang^gbk;t^1252120527';
    url最前面多了个空格。
    -->
    $url_a='http://dsc04.taobao.com/i4/fc0/900/fc490158b3ee5ea18969ef0afbf43315/T1wTlaXaJqXXXXXXXX.desc|var^desc;sign^152e7dbb9f165ef6e78acb28c423d4c0;lang^gbk;t^1252120527';
      

  3.   

    谢谢3楼兄弟回帖 我看了PHP的配置文件你说的那个php.ini中的allow_url_fopen要已经设置成on 
    但是测试的时候就是不知道为什么还是提示这个错误  郁闷死了failed to open stream: HTTP request failed! in D:\PC_webserver\phproot\demo.php on line 3Warning: stream_get_contents() expects parameter 1 to be resource, boolean given in D:\PC_webserver\phproot\demo.php on line 4
      

  4.   

    你的url最前面多了个空格,你改了吗?$url_a='http://dsc04.taobao.com/i4/fc0/900/fc490158b3ee5ea18969ef0afbf43315/T1wTlaXaJqXXXXXXXX.desc|var^desc;sign^152e7dbb9f165ef6e78acb28c423d4c0;lang^gbk;t^1252120527';
    $handel=fopen("$url_a","r");
    $file_a = stream_get_contents($handel);echo($file_a);
      

  5.   

    改了 我就算把那个地址随便改为 http://www.baidu.com 这样的地址还是提示上面那个错误哦  郁闷死
      

  6.   

    关于这个PHP环境  我按照Dedecms这样的网站程序没一点问题 好奇怪哈
      

  7.   


    <?php   
    $url_a='http://dsc04.taobao.com/i4/fc0/900/fc490158b3ee5ea18969ef0afbf43315/T1wTlaXaJqXXXXXXXX.desc|var^desc;sign^152e7dbb9f165ef6e78acb28c423d4c0;lang^gbk;t^1252120527';
    if($url_a =='') die("地址数据为空");$handel=fopen("$url_a","r");
    if(!$handel){
    //fclose($file_a);
    die("采集此页失败!");
    }
    $contents_a = stream_get_contents($handel);
    preg_match_all("/var desc=\'(.*?)\'/i", $contents_a, $matches);
    $pipei_a = $matches[0][0];echo($pipei_a);
    ?> 
    这样的话 可以正常测试出来 但是 我想截取 'http://dsc04.taobao.com/i4/fc0/900/fc490158b3ee5ea18969ef0afbf43315/T1wTlaXaJqXXXXXXXX.desc|var^desc;sign^152e7dbb9f165ef6e78acb28c423d4c0;lang^gbk;t^1252120527中  var desc=‘想截取的内容’不知道这个正则怎么写?能指教下吗?终于可以结贴了