"101010300");foreach ($citycode as $arr => $value) {$citycode[$arr] = "http://wea">
当前位置:Gxlcms > PHP教程 > foreach追加有关问题,求高手帮忙看看

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

时间:2021-07-01 10:21:17 帮助过:20人阅读

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

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

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";
}

你这样明显的用t同样的键值覆盖了之前的值嘛,要不就换个键值如

$citycode[$arr.'1'] = "http://weather.xxx.com/".substr($citycode[$arr], 3,4).".txt";

------解决思路----------------------


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

$tmp = array();

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

echo implode("\r\n", $tmp);

//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


楼主是想这样么?
------解决思路----------------------
$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";
使用拼接的话你忘记换行了。

改这样就可以了

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

$result = array();

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

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

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


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

人气教程排行