lu4n 0 Denunciar post Postado Março 13, 2016 Boa tarde galera, tenho um array com as seguintes informações: function secretaria($string) { $array = array( 8 => 'SEC.EDUCAÇAO - FUNDEB 60%', 8 => 'SEC. DE EDUCAÇAO', 4 => 'SEC.BEM ESTAR,FAM,CRIANÇA E ADOLEC.' ); echo $key = array_search($string, array_values($array)); } $valor = secretaria('SEC. DE EDUCAÇAO'); ai tenho que retornar 8; só ele retornar NULL Compartilhar este post Link para o post Compartilhar em outros sites
Kakashi_Hatake 267 Denunciar post Postado Março 13, 2016 Impossível vc ter um array com dois indices iguais Compartilhar este post Link para o post Compartilhar em outros sites
lu4n 0 Denunciar post Postado Março 13, 2016 ahh ok, nesse caso qual seria a solução ??? pois tenho um arquivo com varias linha para alimentar o db, onde pode ser vários nomes com o mesmo id, ai tenho q comparar o nome dele para retornar o id... alguém sabe como fazer isto ??? Compartilhar este post Link para o post Compartilhar em outros sites
saidmrn 26 Denunciar post Postado Março 14, 2016 Crie um ID e armazene dentro do array. Apartir dai,faça um laço e compare os id salvos dentro do array. Código funcionando: <?php function secretaria($string) { $array = array( 0 => array(8,'SEC.EDUCAÇAO - FUNDEB 60%'), 1 => array(8,'SEC. DE EDUCAÇAO'), 2 => array(4,'SEC.BEM ESTAR,FAM,CRIANÇA E ADOLEC.') ); for($i =0; $i< count($array);$i++) { if($string == $array[$i][1]) { echo $array[$i][0]; } } } $valor = secretaria('SEC.BEM ESTAR,FAM,CRIANÇA E ADOLEC.'); ?> Saída :$valor = 4 Compartilhar este post Link para o post Compartilhar em outros sites
lu4n 0 Denunciar post Postado Março 15, 2016 Crie um ID e armazene dentro do array. Apartir dai,faça um laço e compare os id salvos dentro do array. Código funcionando: <?php function secretaria($string) { $array = array( 0 => array(8,'SEC.EDUCAÇAO - FUNDEB 60%'), 1 => array(8,'SEC. DE EDUCAÇAO'), 2 => array(4,'SEC.BEM ESTAR,FAM,CRIANÇA E ADOLEC.') ); for($i =0; $i< count($array);$i++) { if($string == $array[$i][1]) { echo $array[$i][0]; } } } $valor = secretaria('SEC.BEM ESTAR,FAM,CRIANÇA E ADOLEC.'); ?> Saída :$valor = 4 cara eu fiz assim, mais dá um erro: Undefined offset: 1 eu procurei na net fiz algumas alterações e nada... pode informar pq do erro : ?? Compartilhar este post Link para o post Compartilhar em outros sites
saidmrn 26 Denunciar post Postado Março 15, 2016 cara eu fiz assim, mais dá um erro: Undefined offset: 1 eu procurei na net fiz algumas alterações e nada... pode informar pq do erro : ?? Segundo o erro,o indice não existe. O que você modificou do meu código ,para que eu possa ver aonde está errado ? Compartilhar este post Link para o post Compartilhar em outros sites
lu4n 0 Denunciar post Postado Março 15, 2016 function secretaria($string) { $array = array( 0 => array(8 => 'SEC.EDUCAÇAO - FUNDEB 60%'), 1 => array(8 => 'SEC. DE EDUCAÇAO'), 2 => array(4 => 'SEC.BEM ESTAR,FAM,CRIANÇA E ADOLEC.'), 3 => array(16 => 'SEC. DE SAUDE') ); for($i = 0; $i< count($array[0]); $i++) { if($string == $array[1][1]) { return $array[$i][0]; } } } $secretaria = 'SEC.BEM ESTAR,FAM,CRIANÇA E ADOLEC.'; $secretaria = secretaria($secretaria); está desse jeito. Compartilhar este post Link para o post Compartilhar em outros sites
saidmrn 26 Denunciar post Postado Março 15, 2016 Você criou um índice dentro do array,então no laço for,como começa em 0,não existe,vai pra 1,não existe,vai pra 2,não existe,até chegar em 8,que é o indíce,ou seja,deste jeito está errado pois você tá consultando um indice que você nem sabe o valor. Adaptei o código: <?php function secretaria($string) { $array = array( 0 => array(8,'SEC.EDUCAÇAO - FUNDEB 60%'), 1 => array(8,'SEC. DE EDUCAÇAO'), 2 => array(4,'SEC.BEM ESTAR,FAM,CRIANÇA E ADOLEC.'), 3 => array(16,'SEC. DE SAUDE.') ); for($i =0; $i< count($array);$i++) { if($string == $array[$i][1]) { return $array[$i][0]; } } } $secretaria = 'SEC.BEM ESTAR,FAM,CRIANÇA E ADOLEC.'; $secretaria = secretaria($secretaria); echo $secretaria; ?> Compartilhar este post Link para o post Compartilhar em outros sites
lu4n 0 Denunciar post Postado Março 15, 2016 Cara agora analisei o código, comparando com o meu realmente vii q o erro está no segundo array. Vlw mesmoo Compartilhar este post Link para o post Compartilhar em outros sites