首页 >后端开发 >php教程 >foreach 追加有关问题,求高手帮忙看看

foreach 追加有关问题,求高手帮忙看看

WBOY
WBOY原创
2016-06-13 12:19:441810浏览

foreach 追加问题,求高手帮忙看看。

$citycode = array(
"北京"=>"101010100",
"朝阳"=>"101010300"
);

foreach ($citycode as $arr => $value) {
$citycode[$arr] = "http://weather.xxx.com/".substr($citycode[$arr], 3,4).".txt";
//$citycode[$arr] .= "http://weather.xxx.com/".$citycode[$arr].".txt";
}

/*
 功能:按行保存为文件
*/

saveFile('api/weather.txt',implode("\r\n",$citycode));
 

?>


我想根据数组保存为换行文件,如下:
http://weather.xxx.com/0101.txt
http://weather.xxx.com/101010100.txt
http://weather.xxx.com/0103.txt
http://weather.xxx.com/101010300.txt

要怎么做?
我现在只能做到:
http://weather.xxx.com/0101.txt
http://weather.xxx.com/0103.txt

怎么追加进去呢?
------解决思路----------------------

<br />foreach ($citycode as $arr => $value) {<br />$citycode[$arr] = "http://weather.xxx.com/".substr($citycode[$arr], 3,4).".txt";<br />//$citycode[$arr] .= "http://weather.xxx.com/".$citycode[$arr].".txt";<br />}<br />

你这样明显的用t同样的键值覆盖了之前的值嘛,要不就换个键值如
<br />$citycode[$arr.'1'] = "http://weather.xxx.com/".substr($citycode[$arr], 3,4).".txt";<br />

------解决思路----------------------
<br /><?php<br /><br />$citycode = array(<br />	"北京"=>"101010100",<br />	"朝阳"=>"101010300"<br />);<br /><br />$tmp = array();<br /><br />foreach ($citycode as $arr => $value) {<br />	$tmp[] = "http://weather.xxx.com/".substr($value, 3,4).".txt";<br />	$tmp[] = "http://weather.xxx.com/".$value.".txt";<br />}<br /><br />echo implode("\r\n", $tmp);<br /><br />//saveFile('api/weather.txt',implode("\r\n",$citycode));<br />


<br />http://weather.xxx.com/0101.txt<br />http://weather.xxx.com/101010100.txt<br />http://weather.xxx.com/0103.txt<br />http://weather.xxx.com/101010300.txt<br />


楼主是想这样么?
------解决思路----------------------
$citycode[$arr] .= "http://weather.xxx.com/".$citycode[$arr].".txt";
这里的$citycode[$arr] 已经被修改了
被上一句$citycode[$arr] = "http://weather.xxx.com/".substr($citycode[$arr], 3,4).".txt";

另外:$citycode[$arr] .= "http://weather.xxx.com/".$citycode[$arr].".txt";
使用拼接的话你忘记换行了。

改这样就可以了
<br />$citycode = array(<br />"北京"=>"101010100",<br />"朝阳"=>"101010300"<br />);<br /><br />$result = array();<br /><br />foreach ($citycode as $arr => $value) {<br />    array_push($result,"http://weather.xxx.com/".substr($value, 3,4).".txt");<br />    array_push($result,"http://weather.xxx.com/".$value.".txt");<br />}<br /><br />/*<br /> 功能:按行保存为文件<br />*/<br /><br />saveFile('api/weather.txt',implode("\r\n",$result));<br />


http://weather.xxx.com/0101.txt
http://weather.xxx.com/101010100.txt
http://weather.xxx.com/0103.txt
http://weather.xxx.com/101010300.txt

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn