ホームページ > バックエンド開発 > PHPチュートリアル > 遍历数组时如何优雅的修改键值

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

WBOY
リリース: 2016-06-06 20:21:15
オリジナル
1561 人が閲覧しました

<code>$start = 6;
$list = [
    '1楼', '2楼', '3楼', '4楼', '5楼',
];
</code>
ログイン後にコピー
ログイン後にコピー

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

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

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

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

回复内容:

<code>$start = 6;
$list = [
    '1楼', '2楼', '3楼', '4楼', '5楼',
];
</code>
ログイン後にコピー
ログイン後にコピー

如何在遍历的时候把数组中的键值加上$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>
ログイン後にコピー

https://3v4l.org/O8rXf

<code class="PHP">$key_list = range($start, $start + count($list) - 1);
$list     = array_combine($key_list, $list);</code>
ログイン後にコピー
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート