Php 使用特定键保存项目数组
如何使用数组键保存数组中的特定项 输入:Php 使用特定键保存项目数组,php,arrays,Php,Arrays,如何使用数组键保存数组中的特定项 输入: $arr = [ 0 => 'item0', 2 => 'item2', 4 => 'item4', 43 => 'item43' ]; $arr = [ 2 => 'item2', 43 => 'item43' ]; foreach ($arr as $key => $value) { if(!($key == 2 || $key == 43)) {
$arr = [
0 => 'item0',
2 => 'item2',
4 => 'item4',
43 => 'item43'
];
$arr = [
2 => 'item2',
43 => 'item43'
];
foreach ($arr as $key => $value) {
if(!($key == 2 || $key == 43)) {
unset($arr[$key]);
}
}
现在我只想保存键2和43
预期输出:
$arr = [
0 => 'item0',
2 => 'item2',
4 => 'item4',
43 => 'item43'
];
$arr = [
2 => 'item2',
43 => 'item43'
];
foreach ($arr as $key => $value) {
if(!($key == 2 || $key == 43)) {
unset($arr[$key]);
}
}
当前代码:
$arr = [
0 => 'item0',
2 => 'item2',
4 => 'item4',
43 => 'item43'
];
$arr = [
2 => 'item2',
43 => 'item43'
];
foreach ($arr as $key => $value) {
if(!($key == 2 || $key == 43)) {
unset($arr[$key]);
}
}
它现在可以工作了,但是如果我有更多的数组键要保存呢。你可以试试这个。这里我们使用和
array\u intersect\u key
使用键计算数组的交点
array\u flip
将在键和值上翻转数组
你可以试试这个。这里我们使用和
array\u intersect\u key
使用键计算数组的交点
array\u flip
将在键和值上翻转数组
试试这个代码
<?PHP
$mykeys=array(2,5,9,7,3,4);
foreach ($arr as $key => $value) {
if(!(in_array($key,$mykeys) {
unset($arr[$key]);
}
}?>
试试这段代码
<?PHP
$mykeys=array(2,5,9,7,3,4);
foreach ($arr as $key => $value) {
if(!(in_array($key,$mykeys) {
unset($arr[$key]);
}
}?>
您可以将要保留的密钥放入一个数组中,然后按如下方式对其进行迭代:
$keys = array(); // put the keys here
foreach ( $arr as $key => $value) {
$found = 0;
foreach($keys as $filterKey) {
if ($key == $filterKey) {
$found = 1;
break;
}
$found = 0;
}
if ($found == 0) {
unset($arr[$key]);
}
}
您可以将要保留的密钥放入数组中,然后像这样迭代:
$keys = array(); // put the keys here
foreach ( $arr as $key => $value) {
$found = 0;
foreach($keys as $filterKey) {
if ($key == $filterKey) {
$found = 1;
break;
}
$found = 0;
}
if ($found == 0) {
unset($arr[$key]);
}
}
这就是我要找的。Thanks@just_a_simple_guy很高兴帮助你,朋友……:)这就是我要找的。Thanks@just_a_simple_guy很高兴帮助你,朋友……:)