Em PHP, como faço para encontrar o valor associado a uma chave específica
-
06-07-2019 - |
Pergunta
Eu tenho duas matrizes. Um contém id=>count
eo outro contém id=>name
. Eu estou tentando produzir uma única matriz que é name=>count
. Todas as sugestões sobre uma maneira simples de fazer isso?
Eu olhei os Funções para Array no Manual PHP e não vi nada que se destacou como fazer o que eu quero, então eu estou supondo que eu vou precisar de uma combinação de funções, mas eu estou tendo dificuldades para chegar com algo que não é complicado.
Solução
Algo como:
foreach($countA as $id => $count)
{
$newArray[$nameA[$id]] = $count;
}
Este assume que as chaves estão em correspondência entre as duas matrizes, uma vez que suas necessidades são ambíguos contrário.
Outras dicas
Use array_combine ...
$countArray = array(0 => 1, 1 => 5);
$namesArray = array(0 => "Bob", 1 => "Alice");
$assocArray = array_combine($namesArray, $countArray);
Editar: Aqui está uma solução revisto para as novas exigências expressas no comentário nº 2
$assocArray = array();
foreach($namesArray as $id => $name) {
$assocArray[$name] = (array_key_exists($id, $countArray)) ? $countArray[$id] : 0;
}