SoL*_*oST 34 php arrays array-key
好的,所以我需要在这个数组中抓住'blah'的位置(位置不会总是一样).例如:
$array = (
'a' => $some_content,
'b' => $more_content,
'c' => array($content),
'blah' => array($stuff),
'd' => $info,
'e' => $more_info,
);
Run Code Online (Sandbox Code Playgroud)
所以,我希望能够返回'blah'键位于数组中的位置.在这种情况下,它应该返回3.我怎么能快速做到这一点?而且不会影响$ array数组.
zer*_*kms 89
$i = array_search('blah', array_keys($array));
Run Code Online (Sandbox Code Playgroud)
如果您知道密钥存在:
PHP 5.4(演示):
echo array_flip(array_keys($array))['blah'];
Run Code Online (Sandbox Code Playgroud)
PHP 5.3:
$keys = array_flip(array_keys($array));
echo $keys['blah'];
Run Code Online (Sandbox Code Playgroud)
如果您不知道该密钥存在,您可以查看isset:
$keys = array_flip(array_keys($array));
echo isset($keys['blah']) ? $keys['blah'] : 'not found' ;
Run Code Online (Sandbox Code Playgroud)
这仅仅array_search是使用已经存在于任何数组中的映射.我不能说它是否真的好array_search,这可能取决于场景,所以只是另一种选择.