[英]how to get associative indexes of an array which has a specific value
{
[2012-05-23] => 1
[2012-05-24] => 1
[2012-05-25] => 1
[2012-05-26] => 1
[2012-05-27] => 1
[2012-05-28] => 11
[2012-05-29] => 11
[2012-05-30] => 12
}
例如,這是我的數組,我只想獲得數值大於10的數組索引
所以在這種情況下,答案必須聽起來像那樣
{
[0] => 2012-05-28
[1] => 2012-05-29
[2] => 2012-05-30
}
像這樣的人!
$new_array = array();
foreach ($array as $r => $a)
{
if ($a>10)
$new_array[] = $r;
}
$array=//Your array in original post.
$newarray=array();
foreach ($array as $key=>$val) {
if ($key>10) {
$newarray[]=$key;
}
}
如果$array
是你的第一個數組:
$new_array = array();
foreach($array as $key => $value) {
if( $value > 10 ) {
$new_array[] = $key;
}
}
試試這個(假設<pre>
中的數組被稱為$dates
):
$result = array();
foreach($dates as $date => $value) {
if($value > 10) $result[] = $date;
}
print_r($result);
$testData = array ('2012-05-23' => 1,
'2012-05-24' => 1,
'2012-05-25' => 1,
'2012-05-26' => 1,
'2012-05-27' => 1,
'2012-05-28' => 11,
'2012-05-29' => 11,
'2012-05-30' => 12,
);
$testNeedle = 10;
$result = array_filter($testData,
function($arrayEntry) use ($testNeedle) {
return $arrayEntry > $testNeedle;
}
);
$result = array_keys($result);
var_dump($result);
這段代碼可以完成這項工作。
$array1 = array(
'2012-05-23' => 1,
'2012-05-24' => 1,
'2012-05-25' => 1,
'2012-05-26' => 1,
'2012-05-27' => 1,
'2012-05-28' => 11,
'2012-05-29' => 11,
'2012-05-30' => 12
);
$result = (array_keys(array_filter($array1, "select")));
function select($var)
{ return($var > 10); }
您還可以在空數組中使用帶有array_push的for循環來跳過回調函數。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.