PHP – 关联数组:更改键值对的键,其中value是类对象
发布时间:2020-12-13 16:46:19 所属栏目:PHP教程 来源:网络整理
导读:我有一个形式的关联数组: $input = array("one" = class object1,"two" = class object2,... //and so on); $input的键保证是唯一的.我还有一个名为moveToHead($key)的方法,它将$input [$key]元素移动到该关联数组的第0个位置.我有几个问题: 是否可以确定
我有一个形式的关联数组:
$input = array("one" => <class object1>,"two" => <class object2,... //and so on); $input的键保证是唯一的.我还有一个名为moveToHead($key)的方法,它将$input [$key]元素移动到该关联数组的第0个位置.我有几个问题: >是否可以确定关联数组的索引? 我想为第二点(一个子解决方案)做array_flip,但后来发现array_flip只能在数组元素是int和string时才能完成.有什么指针吗? 解决方法
使用名为array_keys的函数,您可以确定键的索引:
$keys = array_flip(array_keys($input)); printf("Index of '%s' is: %dn",$key,$keys[$key]); 要在特定位置插入数组(例如在开头),有 $key = 'two'; $value = $input[$key]; unset($input[$key]); array_splice($input,array($key => $value)); array union operator可能有类似的东西,但只是因为你想要移到顶部: $key = 'two'; $value = $input[$key]; unset($input[$key]); $result = array($key => $value) + $input; 但我认为这可能比array_splice有更多的开销. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |