development

PHP에서 키에 배열 복사 값

big-blog 2020. 5. 29. 21:57
반응형

PHP에서 키에 배열 복사 값


이 질문에는 이미 답변이 있습니다.

이 배열이 있습니다.

$a = array('b', 'c', 'd');

배열을 다음과 같이 변환하는 간단한 방법이 있습니까?

$a = array('b' => 'b', 'c' => 'c', 'd' => 'd');

$final_array = array_combine($a, $a);

http://php.net/array-combine

추신



* 비슷한 값을 조심하십시오. 예를 들어,


array('one','two','one')

중복 키처럼 변환하면 문제가 될 수 있습니다.


array('one'=>..,'two'=>..,'one'=>...)


와 함께 제안 된 솔루션

$a = array_combine($a, $a);

은 숫자 값에 대해 작동하지 않습니다.예를 들어

array(128,256,512,1024,2048,4096,8192,16384)

PHP 매뉴얼 상태는 키뿐만 아니라 값 이되는 메모리 원했습니다 .

입력 배열에 동일한 문자열 키가있는 경우 해당 키의 이후 값이 이전 키를 덮어 씁니다. 그러나 배열에 숫자 키가 포함 된 경우 이후 값은 원래 값을 덮어 쓰지 않지만 추가됩니다.

그래서 나는 이것을 다음과 같이 해결했다.

foreach($array as $key => $val) {
    $new_array[$val]=$val;
}

참고 URL :

https://stackoverflow.com/questions/6175548/array-copy-values-to-keys-in-php

반응형