2012-06-21 3 views
9

이 하나만있는 연관 배열이 있습니다.key=>value입니다.한 쌍의 연관 배열에서 키를 모른 채 값 가져 오기

이 나는 ​​열쇠 모르겠지만, 나는 그것이 가치의 취득해야합니다

$array = array('???' => 'value'); 
$value = // ?? 

$array[0]

이 작동하지 않습니다.

어떻게 가치를 얻을 수 있습니까?

+0

당신이 볼 수 있듯이 @nickb가 게시 된 몇 가지 좋은 답변이있어, 내가 믿는 가장 간결한 최종은()입니다 사용해야합니다. – Umbrella

+1

동의, 더 많은 "닌자"then'Array_keys' – Qiao

답변

27

배열에 요소가 하나뿐이기 때문에 다음 함수 중 하나를 사용하여 값을 얻을 수도 있습니다. 당신이 array_keys()을 사용하려는 경우

$value = reset($array); 
$value = current($array); 
$value = end($array); 

또한, 당신은해야 할 것 :

$keys = array_keys($array); 
echo $array[ $keys[0] ]; 

이 값을 얻을 수 있습니다. 또한 값을 얻을 수 array_pop() 또는 array_shift()를 사용할 수있는 몇 가지 더 많은 옵션으로

: 당신이 배열의 모든 값을 얻을 수 array_values()을 사용할 수 있습니다 마지막으로

$value = array_pop($array); 
$value = array_shift($array); 

를, 다음 첫 번째를 수행하십시오


물론 다른 많은 대안이 있습니다. 어리석은, 약간 유용한.

$value = pos($array); 
$value = implode('', $array); 
$value = current(array_slice($array, 0, 1)); 
$value = current(array_splice($array, 0, 1)); 
$value = vsprintf('%s', $array); 
foreach($array as $value); 
list(,$value) = each($array); 
+0

나는 그걸 게시하려고했다. http://php.net/manual/en/function.end.php – Umbrella

+1

그 모든 옵션을 사용할 수 있다고 생각합니다. – nickb

4

array_keys()

$keys = array_keys($array); 
echo $array[$keys[0]]; 
+2

그건 OP가 열쇠가 아닌 OP 욕망으로 – Umbrella

+0

내 대답을 업데이트했습니다 –

+0

이제 두 번째 줄에 괄호 대신 괄호가 필요합니다. – grossvogel

2

의 키 당신이 원하는 것은 첫 번째 항목을 검색하는 것입니다을받을 수 있습니까?

$value = reset($array); 
$key = key($array); 
0

당신은 array_values ​​

$newArray = array_values($array); 
echo $newArray[0]; 
관련 문제