Buscar en Mundobip

Artículos | Foro

Quitar la ultima coma añadida en una cadena en un bucle

Quitar la ultima coma añadida en una cadena en un bucle

Notapor Ghost » 16 Jul 2007 22:31

Hola,

¿Cómo hacéis normalmente para quitar la coma de una cadena añadida tras un bucle?

Por ejemplo:
Código: Seleccionar todo
<?php
$frutas=array
(
   "melon",
   "sandia",
   "platano"
)
foreach ($frutas as $fruta)
{
   $macedonia.=$fruta.",";
}
$macedonia=substr($macedonia,0,strlen($macedonia)-1);
?>


¿Vosotros lo hacéis de otra forma? ¿Algún método más elegante? Os invito a que pongáis post de este tipo XD. (Por lo menos para aprender los unos de los otros).



Publicidad
  Equipo de pruebas
  • Procesador
    Intel Core i7 3820@4.5Ghz
  • Placa base
    ASUS Rampage IV Formula
  • RAM
    16Gb Corsair Dominator Platinum 2133Mhz
  • Tarjeta gráfica
    AMD Radeon HD 7970 3Gb
  • Disco Duro
    Seagate 2Tb
  • Unidad Óptica
    Liteon I-HAS 124B
  • Refrigeración
    Corsair H110
  • Fuente alimentación
    Corsair AX860i
  • Caja
    NZXT Switch 810
  • Sonido
    Creative X-FI Platinum HD
  • Sistema operativo
    Windows 7 64bits
  • Monitor
    Dell U2412P
  • Teclado
    Corsair K90
  • Ratón
    SteelSeries XAI
  • Otros
    SteelSeries 5H V2
  • Otros
    Corsair Neutron GTX 240Gb
Ocultar
Avatar de Usuario
Ghost
Site Admin
 
Mensajes: 6324
Registrado: 16 Ene 2007 23:18
Ubicación: Planeta Tierra

Re: Quitar la ultima coma añadida en una cadena en un bucle

Notapor Dragonlich » 17 Jul 2007 07:35

Bueno yo haria algo como un if el cual comprueba que si no es la ultima fruta se ejecute poniendole la coma, y en caso de que la sea pues que pase sin hacer nada, el problema es que tambien tendria que declarar una variable y una constante, la variable seria la que iria del 0 hasta el numero total de frutas en el for y la constante tendria el valor de la cantidad de frutas totales...........te lo pondria como codigo.... pero no estoy seguro de cual es el lenguaje que has usado y hace mucho que yo he tocado algo de programcion (demasiado tiempo ahora que lo pienso) asi que me abstendre a poner codigo (que estaria por supuesto mal)
Ademas como puedes ver lo mio es mas largo jejejejeje es lo que decia siempre mi profesor de programacion, que mis programas son rarisimos, pero funcionan :p
Avatar de Usuario
Dragonlich
 
Mensajes: 584
Registrado: 05 Feb 2007 07:34
Ubicación: Murcia

Re: Quitar la ultima coma añadida en una cadena en un bucle

Notapor TIGRE » 08 Ago 2007 16:50

Siento responder tan tarde.... :-(


pero yo personalmente me inclinaria por las expresiones regulares, mucho más rapidas para procesar textos, y después de acostumbrarte... menos agresiva para la vista que, cuando manipulas cadenas con funciones substring.

Cadena = reg.Replace(Cadena, "caracter_que_quiero_quitar", "espacio_en_blanco");

Ghost, espero que te sirva de algo despues de tanto tiempo... ;-)
Se positivo! pierde un electrón XD
Avatar de Usuario
TIGRE
 
Mensajes: 48
Registrado: 02 Feb 2007 19:58

Re: Quitar la ultima coma añadida en una cadena en un bucle

Notapor Francisco » 19 Mar 2008 16:42

Pues yo creo que la forma más sencilla es de la forma que lo hago yo, yo hago el bucle y todo eso y despues paso por la funcion trim el string que tiene la coma final de esta forma trim("string",","); y la funcion trim se encarga de quitar la coma solita :D.

Un saludo
Francisco
 
Mensajes: 1
Registrado: 19 Mar 2008 16:32

Re: Quitar la ultima coma añadida en una cadena en un bucle

Notapor PaRi » 23 Mar 2008 11:11

Dragonlich escribió: pero no estoy seguro de cual es el lenguaje que has usado


mira lo que pone al principio del código de ghost, cuando abre la etiqueta ;)


por otra parte yo también lo haría como dice Dragonlich, no se tampoco me parece algo "tan largo".
o si el resultado lo metes en una cadena de strings osea en un array, borrar el ultimo caracter (que sería la coma) auqnue esto segundo me parece más absurdo..
Imagen ImagenImagen
Avatar de Usuario
PaRi
 
Mensajes: 937
Registrado: 04 Feb 2007 13:41
Ubicación: Quahoc


Volver a PHP

¿Quién está conectado?

Usuarios registrados: Bing [Bot], Google [Bot]