Olá novamente!
Segunda-feira, dia de curtir ressaca e aprender um pouco de programação para dar mais dor-de-cabeça… :)
A situação é a seguinte: Você, por algum motivo, necessita saber todas as chaves de um array (arranjo). Dois bons exemplos são quando o arranjo tem chaves do tipo string (arranjo['chave']) ou quando não se tem certeza da posição (chave) de determinado dado dentro do arranjo:
Pois bem, para saber qual é a chave de determinado valor num array ou para retornar todas as chaves dele usa-se a função array_keys() (Ohhhhh!)
Sintaxe:
array_keys(arranjo) -> vai retornar um outro arranjo contendo todas as chaves do alvo.
Exemplo:
// montagem do arranjo
$capitais = array(‘Brasil’ => ‘Brasilia’, ‘Argentina’ => ‘Buenos Aires’, ‘EUA’ => ‘Guantanamo’, ‘hahahaha’);
// funcao para retornar todas as chaves
$chaves = array_keys($capitais);
Resultado:
$chaves(
[0] = ‘Brasilia’,
[1] = ‘Buenos Aires’,
[2] = ‘Guantanamo’,
[3] = 0
)
Deve ter surgido a pergunta “porque $chaves[3] = 0 ??”
Simples: Quando não se define uma chave, que é a mesma coisa que um índice, para um valor dentro de um array, este é definido automáticamente como o menor número inteiro disponível dentro do array começando de 0 (zero).
É necessário um pouco de conhecimento sobre variáveis do tipo arranjo para poder acompanhar esta matéria :D
Bom, mas você não quer saber qual é o índice (chave) de todos os valores… só que saber de onde o valor é Brasilia…
Então você deve usar o comando assim:
$chave = array_keys($capitais, “Brasilia”);
Pronto!
Resultado: $chave( [0] -> “Brasil” )
Sinto que você já está imaginando um monte de utilidades para esta função… :)
Se quiser mais informações a respeito, vá em: http://pt.php.net/manual/pt_BR/function.array-keys.php
E vai tomar um banho pois você ainda está fedendo a cachaça! :D