Ir para conteúdo
Fórum Script Brasil
  • 0

Filtro Array Multidimensional


Bruno Fauzi

Pergunta

Bom galera... Preciso de uma ajuda...

Eu trabalho com uma revenda da KingHost, e a mesma possui uma API que utilizo para cadastrar meus clientes por um formulário externo (Para eu não precisar entrar no Painel de Controle da KingHost, Toda vez que tiver que cadastrar um novo cliente)... Assim o próprio cliente faz seu cadastro.

Nesse cadastro, eu aproveito e gravo alguns NOME e EMAIL do cliente em meu Banco de dados pessoal.

Além de cadastrar clientes, eu preciso fazer alguns processos através da API... Porém, para esses processos, eu preciso do ID do cliente cadastrado (Eu não tenho o ID dos clientes cadastrados na revenda através da API).

A única forma de saber o ID de um cliente é através de requisições pela API. Porém, essa requisição retorna uma array multidimensional:

Array ( 
  [status] => ok 
  [body] => Array ( 
            [180770] => Array ( 
			            [idCliente] => 180770 
						[clienteTipo] => I 
						[clienteEmpresa] => 
						[clienteNome] => Julio ramos 
						[clienteCPFCNPJ] => 
						[clienteEmail] => julioramos@live.com 
						[clienteEmailCobranca] => julioramos@live.com 
						[clienteFone] => 555100000000 
						[clienteFax] => 555100000001 
						[clienteEndereco] => Nome da Rua 
						[clienteBairro] => 
						[clienteCidade] => DUQUE DE CAXIAS 
						[clienteEstado] => RJ 
						[clienteCEP] => 44587421 
						[clienteLimiteMapeamento] => 1 
						[clienteLimiteSubdominio] => 20 
						[clienteLimiteMysql] => 20 
						[clienteLimiteMssql] => 0 
						[clienteLimitePgsql] => 0 
						[clienteLimiteFirebird] => 0 
						[clienteLimiteFTPADD] => 5 
						[clienteUniBox] => ON 
						[clienteAcessoFTP] => ON 
						[clienteAcessoDownloadBackup] => ON 
						) 
						  
			[180118] => Array ( 
			            [idCliente] => 180118 
						[clienteTipo] => F 
						[clienteEmpresa] =>  
						[clienteNome] =>Adriano pereira 
						[clienteCPFCNPJ] => 
						[clienteEmail] => adiel@gmail.com 
						[clienteEmailCobranca] => adiel@gmail.com
						[clienteFone] => (21) 984800447 
						[clienteFax] => (0) 
						[clienteEndereco] => Avenida Automóvel Clube 690 Cs 2 
						[clienteBairro] =>  
						[clienteCidade] =>  
						[clienteEstado] => RJ 
						[clienteCEP] => 25260-050 
						[clienteLimiteMapeamento] => 0 
						[clienteLimiteSubdominio] => 0 
						[clienteLimiteMysql] => 0 
						[clienteLimiteMssql] => 0 
						[clienteLimitePgsql] => 0 
						[clienteLimiteFirebird] => 0 
						[clienteLimiteFTPADD] => 0 
						[clienteUniBox] => ON 
						[clienteAcessoFTP] => ON 
						[clienteAcessoDownloadBackup] => ON 
						) 
					) 
		)

Como eu tenho o email dos clientes em meu banco de dados pessoal... Eu quero filtrar essa array utilizando o email do cliente para saber qual é o ID dele.

Bom... Pra ficar mais fácil de entender:

Se esse array fosse o banco de dados, o código seria:

$SQL = mysql_query("SELECT * FROM array WHERE [clienteEmail]='adiel@gmail.com'");

while($result = mysql_fetch_object($SQL)){
    echo "ID: $result->id";
}

Só que não é Banco de dados... kkkkk

Como faço pra imprimir somente o ID de um cliente em questão que esta dentro do array em questão??

Espero que tenham entendido meu dilema e agradeço desde já pela ajuda.

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Resolvi a questão com a seguinte função:

function find_items($array,$findwhat,$value,$found=array()){
	foreach($array as $k=>$v){
			if(is_array($v)){
			 	$result = find_items($v,$findwhat,$value,$found);
				if($result === true){
					$found[] = $v; 	
				}else{
					$found = $result;
				}
			}else{
				if($k==$findwhat && $v==$value){
					return TRUE;
				}
			}
	}
	return $found;
	
}
 $cliente = find_items($array,'clienteEmail','emaildoclienteapesquisar@email.com');

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...