是否有一个我不知道的函数/方法,避免在翻转数组时删除类似的键。示例如下:
原始数组:
Array ( [last_modified] => input [published] => input [project_content] => textarea )
使用数组翻转(键碰撞):
Array ( [input] => published [textarea] => project_content )
答案 0 :(得分:4)
如果要保留键,可以使用二维数组:
<?php
$arr = array ( 'last_modified' => 'input', 'published' => 'input', 'project_content' => 'textarea' );
$result = array();
foreach($arr as $k => $v) {
if (array_key_exists($v, $result)) {
$result[$v][] = $k;
} else {
$result[$v] = array($k);
}
}
print_r($result);
?>
Array
(
[input] => Array
(
[0] => last_modified
[1] => published
)
[textarea] => Array
(
[0] => project_content
)
)
答案 1 :(得分:1)
有一种简单的方法可以使用标准函数"input"
获取数组中具有值array_keys
的所有键:
$keys = array_keys($array, "input");
就是这样; see it in action