php循环修改数组数据 php修改数组内容
关于PHP中foreach循环修改数组值失效的问题
试试这样
10多年的淮滨网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。全网营销推广的优势是能够根据用户设备显示端的尺寸不同,自动调整淮滨建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。成都创新互联公司从事“淮滨网站设计”,“淮滨网站推广”以来,每个客户项目都认真落实执行。
$tmp_data = $this-contracts;
foreach($tmp_data as $k = $v){
$v["khdq"] = $this-getNameById($v["khdq"],"khdq");
}
$this-contracts = $tmp_data;
unset($tmp_data);
foreach($this-contracts as $k = $v){
这样不成功是因为 foreach 此方法仅在被遍历的数组可以被引用时才可用(例如是个变量)。
就是说必须是变量才能在foreach 中传引用
php关于数组循环赋值的问题!
下面的语句有错:
$coord[] = 1;
因为是二维数组,不能赋值1,应该修改为:
$coord[$c] = Array();
赋予一个空数组的值
此外你这个代码看起来是C的思路,PHP不是这么搞的,这样写代码就失去了PHP的优势。
PHP在for循环里怎么给数组修改键值
array_slice($arr,1,-1);截取出来再改;
参考例子,完整写法:
$ar = array(
array(1 = 'a', 2 = 50, 3 = 60, 4 = 'long', 5 = 'zzz', 6 = 'kkk', 7 = 'ooo'),
array(1 = 'b', 2 = 60, 3 = 70, 4 = 'king', 5 = 'lll', 6 = 'ttt', 7 = 'ppp'),
array(1 = 'c', 2 = 70, 3 = 80, 4 = 'quit', 5 = 'qqq', 6 = 'xxx', 7 = 'ccc'),
);
$kname = array('StaffId', 'Wage', 'Name', 'Work', 'Type');
function foo($v, $k, $kname) {
$v = array_combine($kname, array_slice($v, 1, -1));
}
array_walk($ar, 'foo', $kname);
print_r($ar);
Array
(
[0] = Array
(
[StaffId] = 50
[Wage] = 60
[Name] = long
[Work] = zzz
[Type] = kkk
)
[1] = Array
(
[StaffId] = 60
[Wage] = 70
[Name] = king
[Work] = lll
[Type] = ttt
)
[2] = Array
(
[StaffId] = 70
[Wage] = 80
[Name] = quit
[Work] = qqq
[Type] = xxx
)
)
本文名称:php循环修改数组数据 php修改数组内容
文章分享:http://pwwzsj.com/article/doipooj.html