ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

从PHP中的数组键范围跳过键索引

2019-12-10 23:32:27  阅读:270  来源: 互联网

标签:for-loop foreach arrays php


这仅适用于具有索引号的数组.例如,我有这个数组;

$array = [
  "0" => "number 1",
  "1" => "number 2",
  "2" => "number 3",
  "3" => "number 4",
  "4" => "number 5",
  "5" => "number 6",
  "6" => "number 7",
  "7" => "number 8",
  "8" => "number 9"
];

我想跳过某些特定范围的关键索引,例如,如果索引的数量从0到5,则跳过foreach.这意味着我们可以这样做.

foreach($array as $key => $value){
   if(array_key_exist($key, range(0,5))
      continue;
   echo $value."<br/>"
}  

或者我们可以使用for …循环

for($ind = 0; $ind < count($array); $ind++){    
    if(array_key_exist($ind, range(0,5))
      continue;    
echo $arr[$ind]."<br/>" 
}

我如何不使用继续或先搜索array_key而跳过索引?确保上面的代码对我来说很好,但是如果我有一堆数组键和值,我认为这不是一个好选择.

解决方法:

您可以从第5个索引开始获取数组的切片,再到其余部分,

$result = array_slice($array,5,count($array)-5, true);

array_slice —提取数组的一部分

Note:

array_slice() will reorder and reset the integer array indices by
default. This behaviour can be changed by setting preserve_keys to
TRUE. String keys are always preserved, regardless of this parameter.

Demo.

标签:for-loop,foreach,arrays,php
来源: https://codeday.me/bug/20191210/2104801.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有