亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

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

Array_Search 多個相同的元素

Array_Search 多個相同的元素

PHP
弒天下 2022-12-23 13:08:42
有一個像$arr = array(1,2,3,3,3,4,5). 如果我們想獲得所有值為 3 的索引怎么辦?我用過array_search(3, $arr),但它只返回一個整數和第一個值為“3”的索引我們怎樣才能得到一個$indexes = array(2,3,4)顯示所有值為 3 的索引的數組?非常感謝您的幫助
查看完整描述

3 回答

?
繁星點點滴滴

TA貢獻1803條經驗 獲得超3個贊

您可以使用array_keys帶有搜索值的PHP Doc

演示

array_keys($arr,3)

array_keys()從數組中返回鍵、數字和字符串。

如果指定了 search_value,則只返回該值的鍵。否則,返回數組中的所有鍵。


查看完整回答
反對 回復 2022-12-23
?
揚帆大魚

TA貢獻1799條經驗 獲得超9個贊

你可以使用 array_keys:

foreach (array_keys($arr) as $key) if ($arr[$key] == 3) $result[] = $key;


查看完整回答
反對 回復 2022-12-23
?
肥皂起泡泡

TA貢獻1829條經驗 獲得超6個贊

使用該解決方案,您可以創建復雜的過濾器。在這種情況下,我們將每個值都與數字三進行比較(=== 運算符)。過濾器返回索引,當比較為真時,它將被丟棄。


$a = [1,2,3,4,3,3,5,6];


$threes = array_filter($a, function($v, $k) {

  return $v === 3 ? $k : false; },

  ARRAY_FILTER_USE_BOTH

);

$threes是一個包含所有值為 3 的鍵的數組。


陣列(3){ 2, 4, 5 }


查看完整回答
反對 回復 2022-12-23
  • 3 回答
  • 0 關注
  • 201 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號