Home > Backend Development > PHP Tutorial > 遍历数组时如何优雅的修改键值

遍历数组时如何优雅的修改键值

WBOY
Release: 2016-06-06 20:21:15
Original
1560 people have browsed it

<code>$start = 6;
$list = [
    '1楼', '2楼', '3楼', '4楼', '5楼',
];
</code>
Copy after login
Copy after login

如何在遍历的时候把数组中的键值加上$start的值

因为现在是ajax加载评论,所以传给前端的html代码中的楼层都是从1-5
我想 第二次请求的时候 楼层数是6、7、8、9、10

看了标签上的两个函数 只能对值做引用处理,不能对键引用。所以有没有其他可以处理的方法。在不用foreach的情况下。

PS: 我现在想到的是使用array_keys把所有的键取出来处理了以后,在和原数组进行合并

回复内容:

<code>$start = 6;
$list = [
    '1楼', '2楼', '3楼', '4楼', '5楼',
];
</code>
Copy after login
Copy after login

如何在遍历的时候把数组中的键值加上$start的值

因为现在是ajax加载评论,所以传给前端的html代码中的楼层都是从1-5
我想 第二次请求的时候 楼层数是6、7、8、9、10

看了标签上的两个函数 只能对值做引用处理,不能对键引用。所以有没有其他可以处理的方法。在不用foreach的情况下。

PS: 我现在想到的是使用array_keys把所有的键取出来处理了以后,在和原数组进行合并

<code>$list = array_flip( array_map(function($key) use ($start) { return $start + (int)$key; }, array_flip($list)) );
</code>
Copy after login

https://3v4l.org/O8rXf

<code class="PHP">$key_list = range($start, $start + count($list) - 1);
$list     = array_combine($key_list, $list);</code>
Copy after login
Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template