나는 다차원 배열의 값의 키를 찾을 필요가다차원 배열에서 특정 값의 키를 찾으려면 어떻게합니까?
답변
검색 키
그래서 당신은 값을 알고 있다면, 당신은 $ 키를 찾고있는 것 같아요. 이어서 array_search을 사용
$array = array(0 => 'value1', 1 => 'value2', 2 => 'value3', 3 => 'red');
$key = array_search('value2', $array); // 2
를 그것이 multidimentional 배열 기능이 사용되는 경우에 배열
function recursive_array_search($needle,$haystack) {
foreach($haystack as $key=>$value) {
$current_key=$key;
if($needle===$value OR (is_array($value) && recursive_array_search($needle,$value) !== false)) {
return $current_key;
}
}
return false;
}
을?
값이 배열에 있는지 알고 싶으면 in_array 함수를 사용하십시오.
if (in_array("value1", $array)) {
echo "value1 is in the array";
}
그것은 multidimentional 배열은 다음의 경우 사용 : 위의 배열로
function in_multiarray($elem, $array)
{
$top = sizeof($array) - 1;
$bottom = 0;
while($bottom <= $top)
{
if($array[$bottom] == $elem)
return true;
else
if(is_array($array[$bottom]))
if(in_multiarray($elem, ($array[$bottom])))
return true;
$bottom++;
}
return false;
}
그게 좋긴하지만 나는 얼마나 많은 차원을 알고 있는지 모르겠다. 다차원 배열입니다. 치수가 얼마나되는지 모르겠습니다. –
그는 다차원 배열 솔루션을 제공했습니다. @MarceloNoronha –
굉장한 대답 @ Adam Sinclair –
당신은 알고 있거나 얼마나 많은 차원을 걱정 할 필요가 없습니다. Adam Sinclair의 대답의 "검색 키"섹션에있는 다차원 예제는 배열의 전체 지형을 크롤링하여 모양이 어떻게되는지를 발견하고 완료된 부분을 잊어 버리며 검색 한 내용을 얻지 못합니다.
먼저 in_array/is_array 함수를 사용하여 배열의 값을 검색 할 수 있지만 in_array가 다차원 배열에서 작동하지 않으므로 다중 dimensinoal 배열이있을 때 foreach 루프를 사용하여 검색하는 것이 더 좋습니다. 여기에 다차원 배열에 대해 작동하는 PHP 매뉴얼의 함수가 있습니다. 따라서 입력 배열이 얼마나 깊은 지 상관하지 않으므로 재귀 적으로 작동합니다.
function myInArray($array, $value, $key){
//loop through the array
foreach ($array as $val) {
//if $val is an array cal myInArray again with $val as array input
if(is_array($val)){
if(myInArray($val,$value,$key))
return true;
}
//else check if the given key has $value as value
else{
if($array[$key]==$value)
return true;
}
}
return false;
}
- 1. 다차원 배열에서 최대 값을 찾으려면 어떻게합니까
- 2. 다차원 배열에서 특정 값의 발생 횟수
- 3. 셀 배열에서 특정 셀을 찾으려면 어떻게합니까?
- 4. MATLAB : 다차원 배열에서 값의 좌표 찾기
- 5. 배열에서 특정 값의 키를 반환하려면 어떻게해야합니까?
- 6. 다차원 배열에서 가장 긴 연결 요소를 찾으려면
- 7. 다차원 배열에서 키를 검색하고 경로를 반환하는 중
- 8. ListView에서 특정 레코드를 찾으려면 어떻게합니까?
- 9. 배열에서 마지막 항목의 색인을 찾으려면 어떻게합니까?
- 10. Java의 배열에서 문자열의 인덱스 번호를 찾으려면 어떻게합니까
- 11. 플래시 as3 - 배열에서 객체의 색인을 찾으려면 어떻게합니까?
- 12. C에서 키를 기반으로 다차원 배열에서 요소를 삭제하십시오.
- 13. PHP - 다차원 배열에서 중복 배열 키를 병합은
- 14. 배열에서 5 bigests 값의 키를 가져옵니다
- 15. SQL Server : 특정 문자열 값의 출처를 찾으려면
- 16. PHP의 다차원 배열에서 특정 인덱스를 제거하는 방법
- 17. 다차원 배열에서 특정 값을 인쇄하는 방법
- 18. 다차원 배열에서 행 제거
- 19. 배열에서 특정 줄을 인쇄하려면 어떻게합니까?
- 20. 배열에서 특정 요소를 추출하려면 어떻게합니까?
- 21. Array에서 특정 키를 제거하려면 어떻게합니까? PHP
- 22. watir-webdriver를 사용하여 특정 테이블을 찾으려면 어떻게합니까?
- 23. 웹 페이지에서 특정 단어를 찾으려면 어떻게합니까?
- 24. Firemonkey가있는 Android 장치에서 특정 파일을 찾으려면 어떻게합니까?
- 25. JavaFX 노드 트리에서 특정 노드를 찾으려면 어떻게합니까?
- 26. 레코드 배열의 특정 레코드를 필드별로 찾으려면 어떻게합니까?
- 27. PHP에서 특정 키와 연관된 값을 찾으려면 어떻게합니까
- 28. Canvas에서 특정 하위 이미지를 찾으려면 어떻게합니까?
- 29. Neo4j Cypher에서 특정 유형의 노드를 찾으려면 어떻게합니까?
- 30. 내 데이터베이스에서 특정 이미지를 찾으려면 어떻게합니까?
는 루프의 모든 요소를 통해 지정된 값 어떤지 하나 하나를 확인 할 수 없습니다? – APerson
이것은 다차원입니다. 치수의 수를 모르겠다. –
http://stackoverflow.com/questions/4128323/in-array-and-multidimensional-array –