$xml = simplexml_load_file('http://feeds.bbc.co.uk/weather/feeds/rss/5day/id/1157.xml');
$picburl=$xml->channel->image->url; 
echo $picburl;
$s = var_export ((string)$picburl, true); 
file_put_contents('test.php', " <?php\n\$picburl = $s;\n?>"); 把类型转换一下,不就可以了.

解决方案 »

  1.   

    我给你把代码加上注释,你就清楚了$xml = simplexml_load_file('http://feeds.bbc.co.uk/weather/feeds/rss/5day/id/1157.xml');
    $picburl=$xml->channel->image->url;
    //这里echo 是纯粹输出变量的值
    echo $picburl;
    //这里var_export(temp,true)是返回变量的结构信息,而不是变量的值
    //而且这里的$picburl现在并不是等于http://www.bbc.co.uk/weather/images/symbols/57x57/3.gif
    //而是$xml->channel->image->url,所以下面一句实际上等于:$s = var_export ($xml->channel->image->url, true); 
    $s = var_export ($picburl, true); 
    //所以这个$s是变量$xml->channel->image->url的结构信息,并不是$picburl的值.
    file_put_contents('test.php', " <?php\n\$picburl = $s;\n?>");