PHP-在指定键之前获取先前数组元素的快速方法
如何获取特定数组键之前的所有前一个元素 这是我的阵列:PHP-在指定键之前获取先前数组元素的快速方法,php,arrays,Php,Arrays,如何获取特定数组键之前的所有前一个元素 这是我的阵列: $key = 256; $array = ( 125 => array(571, 570), 284 => array(567, 566), 256 => array(562, 560), 110 => array(565, 563), ); 现在我想要这样的结果: $array = ( 125 => array(571, 570), 284 => array(567, 566) ); 您可以迭
$key = 256;
$array = (
125 => array(571, 570),
284 => array(567, 566),
256 => array(562, 560),
110 => array(565, 563),
);
现在我想要这样的结果:
$array = (
125 => array(571, 570),
284 => array(567, 566)
);
您可以迭代并将值推送到
newArray
,直到您按下要搜索的键:
$Key = 256;
$array = array(
"125" => array(571, 570),
"284" => array(567, 566),
"256" => array(562, 560),
"110" => array(565, 563),
);
$newArray = [];
foreach($array as $key => $value)
{
if($key == $Key) break;
$newArray[$key] = $value;
}
print_r ($newArray);
/*
=> Array (
[125] => Array ( [0] => 571 [1] => 570 )
[284] => Array ( [0] => 567 [1] => 566 )
)
*/
您可以迭代并将值推送到
newArray
,直到您按下要搜索的键:
$Key = 256;
$array = array(
"125" => array(571, 570),
"284" => array(567, 566),
"256" => array(562, 560),
"110" => array(565, 563),
);
$newArray = [];
foreach($array as $key => $value)
{
if($key == $Key) break;
$newArray[$key] = $value;
}
print_r ($newArray);
/*
=> Array (
[125] => Array ( [0] => 571 [1] => 570 )
[284] => Array ( [0] => 567 [1] => 566 )
)
*/
首先使用and获取键的数字索引。然后使用
首先使用and获取键的数字索引。然后使用
你可以做这件奇怪的事:
$key = 256;
$array = array(
125 => array(571, 570),
284 => array(567, 566),
256 => array(562, 560),
110 => array(565, 563),
);
print_r(array_slice($array, array_search($key, array_keys($array)), null, true));
输出
Array
(
[256] => Array
(
[0] => 562
[1] => 560
)
[110] => Array
(
[0] => 565
[1] => 563
)
)
更新
我意识到现在我再看一遍,我是向后看的。我称之为诵读困难症时刻。。。正确的方法是这样的
print_r(array_slice($array, 0, array_search($key, array_keys($array)),true));
你可以做这件奇怪的事:
$key = 256;
$array = array(
125 => array(571, 570),
284 => array(567, 566),
256 => array(562, 560),
110 => array(565, 563),
);
print_r(array_slice($array, array_search($key, array_keys($array)), null, true));
输出
Array
(
[256] => Array
(
[0] => 562
[1] => 560
)
[110] => Array
(
[0] => 565
[1] => 563
)
)
更新
我意识到现在我再看一遍,我是向后看的。我称之为诵读困难症时刻。。。正确的方法是这样的
print_r(array_slice($array, 0, array_search($key, array_keys($array)),true));
此处可能重复,请重新阅读。它不能解决我的问题。@MDAbubakar请重新表述您的问题,您是指给定键之前的元素吗?因为这就是你想要的结果。是的。。。我想在给定键之前获取元素,这肯定是重复的。我会很快看一看。这里可能有重复的,请再读一遍。它不能解决我的问题。@MDAbubakar请重新表述您的问题,您是指给定键之前的元素吗?因为这就是你想要的结果。是的。。。我想在给定键之前获取元素,这肯定是重复的。我会快速看一看。这是我的想法,但我有一个诵读困难的时刻,并以另一种方式围绕lol。这是我的想法,但我有一个诵读困难的时刻,并以另一种方式围绕lol。