是否有一种跳过数组值的方法或其他任何方法。
我知道,我们可以将其设置为null或''。但是我有很多数组键和很少有值的键。
在下面的数组中,只需要Iconpicker一个值,将所有其他键设置为null或将一个空数组设置为一项艰巨的任务。
不是将所有键设置为空
$array = array(
'active' => null,
'required' => null,
'show_label'=> null,
'label_text'=> null,
'default' => null,
'iconpicker'=> array(
'args' => '11'
),
'placeholder'=> null,
'min_char' => null,
'max_char' => null,
),
我想保持简单
$array = array(
'active',
'required',
'show_label',
'label_text',
'default',
'iconpicker' => array(
'other' => 'test',
),
'placeholder',
'min_char',
'max_char'
),
这只是一个示例,还有更多的键。我将此数组作为函数的参数进行处理,因此它应该是动态的。
foreach ( $array as $key => $value ) {
generate_settings( $key, $value )
}
答案 0 :(得分:0)
在下面尝试此代码,它将删除除“ iconpicker”键值对之外的所有其他键
$array = array(
'active',
'required',
'show_label',
'label_text',
'default',
'iconpicker' => array(
'other' => 'test'
),
'placeholder',
'min_char',
'max_char'
);
print_r(array_intersect_key($array, array('iconpicker' => '')));
答案 1 :(得分:0)
例如,在PHP中定义数组时,不必初始化数组的所有键,您可以执行以下操作:
$a['iconpicker'] = array('other' => 'test');
echo $a['iconpicker']['other'];
然后在代码中稍后执行以下操作:
$a['active'] = null;
$a['key'] = 'value';
现在:
var_dump($a);
会显示:
array(3) {
["iconpicker"]=> array(1) {
["other"]=> string(4) "test"
}
["active"]=> NULL
["key"]=> string(3) "val"
}
PHP这样非常动态。只需根据需要添加或删除数组即可。