Ir para conteúdo

Arquivado

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

Mateus Cruz

não imprimir uma virgula no último registro

Recommended Posts

Olá galera, estou com um problema que não estou conseguindo resolver.

 

Segue o meu código:

var imagens        = new Array(
<?php 
echo"'"; 
echo $foto;
echo"',";
$cont++;
}?>);
var num_img    = <?php echo $cont ?>;
var img_atual =0;

Na qua preciso que a var imagens fiquei assim:

var imagens = new Array ('slide1.png','slide2.png');

Porém sempre sai com 1 virgula no final: var imagens = new Array ('slide1.png','slide2.png',);

 

 

Alguém sabe como me ajudar?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não intendi muito bem, isso está dentro de um loop(laço) ?

coloca o código completo se tiver mais coisas.

 

só por curiosidade, essa String que tu ta montando tu vai usar em Javascript, ou era pra montar um array normal de strings(imagens) pra usar no próprio PHP? O.o

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não intendi muito bem, isso está dentro de um loop(laço) ?

coloca o código completo se tiver mais coisas.

 

só por curiosidade, essa String que tu ta montando tu vai usar em Javascript, ou era pra montar um array normal de strings(imagens) pra usar no próprio PHP? O.o

 

Está dentro de um loop que mostra todos os registros.

E vou usar em JavaScript a string.

 

Você sabe como?

Compartilhar este post


Link para o post
Compartilhar em outros sites
var imagens = new Array(
<?php
   $tags = array();
   // explode
   $tags = explode(',', $foto);
   // loop
      $cont=0;
   foreach ($tags as $tag) { 
      $links[] = "'".$foto."'"; 
	  $cont++;
   }   
   //implode — Junta elementos
   $link = implode(', ', $links); 
   // exibe na tela
   echo $link; 
 ?>
);
var num_img = <?php echo $cont ?>;
var img_atual =0;

:rolleyes:

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

O correto é verificar se é a última iteração.

Se for, não exiba a vírgula:

 

 

$total = 5;for ($i = 0; $i < $total; $i++){    echo $i . ($i < $total - 1 ? "," : "");}

Mas, pensando em desempenho, é mais vantajoso sempre exibir a vírgula e depois retirar a último usando substr(), como já citado antes

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.