문제

두 개의 배열이 있습니다. 하나는 포함됩니다 id=>count 그리고 다른 하나는 포함되어 있습니다 id=>name. 나는 단일 배열을 생산하려고합니다 name=>count. 이 작업을 수행하는 간단한 방법에 대한 제안이 있습니까?

나는 그것을 보았다 PHP 매뉴얼의 배열 기능 그리고 내가 원하는 일을하는 것으로 눈에 띄는 것을 보지 못했기 때문에 기능의 조합이 필요하다고 생각하지만, 복잡하지 않은 것을 생각해내는 데 어려움을 겪고 있습니다.

도움이 되었습니까?

해결책

같은 것 :

foreach($countA as $id => $count)
{
    $newArray[$nameA[$id]] = $count;
}

이것은 요구 사항이 모호하기 때문에 키가 두 배열 사이에 대응한다고 가정합니다.

다른 팁

사용 Array_combine...

$countArray = array(0 => 1, 1 => 5);
$namesArray = array(0 => "Bob", 1 => "Alice");

$assocArray = array_combine($namesArray, $countArray);

편집하다: 다음은 의견 #2에 표현 된 새로운 요구 사항에 대한 수정 된 솔루션입니다.

$assocArray = array();
foreach($namesArray as $id => $name) {
    $assocArray[$name] = (array_key_exists($id, $countArray)) ? $countArray[$id] : 0;
}
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top