mixed var_export ( mixed expression [, bool return]).
此函数返回关于传递给该函数的变量的结构信息
$bpicurl= 'http://www.bbc.co.uk/weather/images/symbols/57x57/10.gif';
echo basename($bpicurl,".gif");
这样写输出结果才是10啊按照你那传参方式就相当于执行 basename("'http://www.bbc.co.uk/weather/images/symbols/57x57/10.gif'",".gif");
结果当然是 10.gif'

解决方案 »

  1.   


    $picburl=$xml->channel->image->url;
    $bpicurl = var_export ((string)$picburl, true); 
    这第二行应该怎么改啊?才能使$bpicurl的值是http://www.bbc.co.uk/weather/images/symbols/57x57/10.gif?
      

  2.   

    $bpicurl = var_export ((string)$picburl, true); 
    这行改为
    $bpicurl = (string)$picburl; 
    就可以了,然后$bpicurl就是“http://www.bbc.co.uk/weather/images/symbols/57x57/10.gif”
    如果楼主的$xml->channel->image->url确实是一串字符串的话,按道理是没错的,你试一下我回答的,看看怎样??
      

  3.   

    谁说这样才是对的??如果在调用var_export之前,$picburl的值是字符串,那是没错的,返回值依然是字符串(因为var_export有第二个参数是TRUE)。
      

  4.   

    只不过就是多了两个单引号,影响了basename的执行
      

  5.   

    我做了一次测试:根据楼主的代码,我把它简化成:
    <?php 
    $bpicurl="'http://www.bbc.co.uk/weather/images/symbols/57x57/10.gif'";
    $bpicurl = var_export ((string)$picburl, true); 
    echo basename($bpicurl,".gif");
    ?>输出结果为:
    ''楼主那个结果好像有些不对,怎么都不会是10.gif