Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

leo_SJCampos

Contar registros de uma variavel

Recommended Posts

Olá galera...

 

Seguinte... como eu faço para contar a quantidade de registros que há em uma variavel...

 

Obs.. os dados nao vem do BD, vem de um xml que eu trato com DOM da seguinte forma...

for($i=0; $i < $sections->length; $i++) {
			$checks = $sections->item($i);
			
			$guia =  $checks->childNodes->item(1)->nodeValue;

Por exemplo.. queria saber, quantos registros a variavel guia possui...

 

Ja tentei com a funcção count mas nao obtive sucesso..

 

Valeu Galera...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acho que a resposta esta na sua propria pergunta

 

 

for($i=0; $i < $sections->length; $i++) {

$checks = $sections->item($i);

 

$guia = $checks->childNodes->item(1)->nodeValue;

 

Abraço Marco

Compartilhar este post


Link para o post
Compartilhar em outros sites

Irmão,, nao entendi sua resposta;;;;

 

eu ja tentei fazer dessa forma....

 

ai eu mando ele imprimir a variavel $guia...

 

Ele imprime os registros certinho... o que eu nao consegui é fazer ele pegar quantos registros tem.....

Compartilhar este post


Link para o post
Compartilhar em outros sites

QUOTE

for($i=0; $i < $sections->length; $i++) {

$checks = $sections->item($i);

 

$guia = $checks->childNodes->item(1)->nodeValue;

 

//se voce fazer assim

$total_registros = $sections->length;;

//o que aparece

 

KUROLE

Compartilhar este post


Link para o post
Compartilhar em outros sites

ah ta entendi sua resposta....

 

mas dessa forma, ele conta os registros de todo xml saca?

 

eu precisava contar o valor da variavel...

 

$guia = $checks->childNodes->item(1)->nodeValue;

 

porque após issp, terei que mostrar tambem a soma desses valores entendeu?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ja tentei tambem usar o strlen mas ele retorna sempre 1.... tentei só por tentar mesmo... porque o strlen conta a quantidade de caracteres.

 

$count = strlen($tipoguia);

 

Bom galera, nao sei o que fazer...se alguem puder me ajudar de alguma forma....

 

Valeu Galera...

Compartilhar este post


Link para o post
Compartilhar em outros sites

André o sizeof tbm nao funcionou...

 

Os dados que eu quero pegar são esses:

 

<record>

<numguia>00000004000000144739</numguia>

<numguiap></numguiap>

<nome_beneficiario>USUARIO NAO CADASTRADO!</nome_beneficiario>

<valor>0.00</valor>

<tipoguia>E</tipoguia>

</record>

<record>

<numguia>00000004000000290037</numguia>

<numguiap></numguiap>

<nome_beneficiario>LEONARDO MELO DE LIMA</nome_beneficiario>

<valor>1.00</valor>

<tipoguia>C</tipoguia>

</record>

ou seja, nesse caso a minha variavel guia que eu pego o primeiro registro do XML assim:

 

$guia = $checks->childNodes->item(1)->nodeValue;

 

dentro de um FOR eu consigo lista-las sem problemas... o problema é contar quantos registros eu possuo... nesse caso acima são 2

 

Entendeu?

Compartilhar este post


Link para o post
Compartilhar em outros sites

humm.. da pra fazer uma gambiarra huahuahu

mas não sei se vai funcionar também..

nem testei mas quem sabe.. de certo

$gamb = explode("<record>",$guia);
$conta = sizeof($gamb);

nem sei se funciona isso :P

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

O resultado que você quer é 3, certo? Como você sabe que são 3? Ele passou 3 vezes no loop? Tem 3 blocos de registros com 20 cada um? Se for isto, faz um strlen (vai retornar 60) e divide por 20.

 

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

sim é isso mesmo... ele passou 3 vezes pelo loop....

 

só que quando eu uso a função strlen, e mando atribuir a minha variavel...

 

na impressao sai sempre 1....

 

deve ter alguma coisa que eu to fazendo errado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Seria mais ou menos assim

for($i=0; $i < $sections->length; $i++) {
			$checks = $sections->item($i);
			
			$guia =  $checks->childNodes->item(1)->nodeValue;
// restante do for
} //final do for
$qtde_loop = sizeof($guia)/20;
echo $qtde_loop;

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.