第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

PHP 切片范圍按鍵而不是按索引

PHP 切片范圍按鍵而不是按索引

PHP
HUWWW 2022-09-03 17:24:53
我有一個如下所示的數(shù)組:$array = [  1000 => 'something',  2000 => 'something',  10000 => 'something',  20000 => 'something',  300000 => 'something',];假設我想獲得 和 之間的間隔。我需要循環(huán)還是有更好的方法?200020000它不是索引,因此在這種情況下我無法使用切片。我所希望的我可以用一個循環(huán)自己做這件事,但希望有更聰明的東西。$range = getRange(2000, 20000, $array);print_r($range);輸出$range = [  2000 => 'something',  10000 => 'something',  20000 => 'something',];
查看完整描述

3 回答

?
夢里花落0921

TA貢獻1772條經(jīng)驗 獲得超6個贊

array_filter可以根據(jù)值或鍵進行過濾...


function getRange($min, $max, $array) {

  return array_filter($array, function($key) use ($min, $max) {

    return $key >= $min && $key <= $max;

  }, ARRAY_FILTER_USE_KEY ); // flag to pass the key into the callback function

}


查看完整回答
反對 回復 2022-09-03
?
Cats萌萌

TA貢獻1805條經(jīng)驗 獲得超9個贊

function getRange($start,$end, $array){

  $dataArray= array();

  foreach($array as $key=>$value){


    if($key>=$start && $key<=$end){

       $dataArray[$key]= $value;

     }

  }

 return $dataArray; 

}

您將需要循環(huán)訪問數(shù)組并手動執(zhí)行此操作。即使有任何內(nèi)置函數(shù)將循環(huán)訪問結果。簡而言之,您將始終需要遍歷數(shù)據(jù)集,并且您將始終具有O(N)的復雜性。


查看完整回答
反對 回復 2022-09-03
?
楊魅力

TA貢獻1811條經(jīng)驗 獲得超6個贊

array_splice是此問題的解決方案。但問題是鑰匙永遠不會被保留。查看此內(nèi)容,了解保留密鑰array_splice解決方案array_splice



查看完整回答
反對 回復 2022-09-03
  • 3 回答
  • 0 關注
  • 122 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號