Pregunta:
Fecha: 04-12-2015 09:51:47
(En Español)
Muchas veces nos encontramos con que estamos construyendo una cadena de forma dinámica en PHP mientras recorremos un bucle, un array o un objeto. Por ejemplo, cuando queremos componer una lista separando los elementos con comas u otro caracter. Pero claro, siempre nos termina sobrando el último:
Pese a que muchos lenguajes no dan importancia a esa última coma, llamada en programación trailing comma, en PHP debemos asegurarnos de suprimirla. Para ello, muchas veces he encontrado códigos que hacen uso de la función substr() para ello:
Correcto funciona, pero hay otra forma más elegante: usando trim().
Efectivamente, la función trim() que habitualmente se usa para eliminar espacios en blanco al principio o final de una cadena, acepta como parámetro el caracter que queremos filtrar o eliminar:
saludos
Votos: 6 - Respuestas: 4 - Vistas: 18 Compartir en: Google Facebook Twitter LinkedIn Link
Concatenar lista de elementos separados por coma con PHP[Resuelta]
Espero que a alguien le sirva esta info :DMuchas veces nos encontramos con que estamos construyendo una cadena de forma dinámica en PHP mientras recorremos un bucle, un array o un objeto. Por ejemplo, cuando queremos componer una lista separando los elementos con comas u otro caracter. Pero claro, siempre nos termina sobrando el último:
$myString = '';
for( $x = 0; $x < 3; $x++ ){
$myString .= 'number ' . $x . ',';
}
echo $myString; // 'number 1, number 2, number 3,'
Pese a que muchos lenguajes no dan importancia a esa última coma, llamada en programación trailing comma, en PHP debemos asegurarnos de suprimirla. Para ello, muchas veces he encontrado códigos que hacen uso de la función substr() para ello:
$myString = substr($myString, 0, -1); echo $myString; // 'number 1, number 2, number 3'
Correcto funciona, pero hay otra forma más elegante: usando trim().
Efectivamente, la función trim() que habitualmente se usa para eliminar espacios en blanco al principio o final de una cadena, acepta como parámetro el caracter que queremos filtrar o eliminar:
$myString = trim($myString, ','); echo $myString; // 'number 1, number 2, number 3'
saludos
Votos: 6 - Respuestas: 4 - Vistas: 18 Compartir en: Google Facebook Twitter LinkedIn Link
Respuestas:
-
Fecha: 04-12-2015 10:03:46 Gran info gracias por compartir hace mucho tenia esta duda. Votos: 2 - Link respuesta
-
Fecha: 04-12-2015 11:54:20 Tenemos también otra opción utilizando arreglos:
<?php $myStringArray = []; $separator = ', '; for( $x = 0; $x < 3; $x++ ){ $myStringArray[] = 'number' . ($x + 1); } echo implode($separator, $myStringArray); // 'number 1, number 2, number 3,'Votos: 5 - Link respuesta -
Fecha: 04-12-2015 11:59:33 De hecho más sencillito:
<?php $myStringArray = []; $separator = ', '; foreach( range(1, 3) as $x ){ $myStringArray[] = "number {$x}"; } echo implode($separator, $myStringArray); // 'number 1, number 2, number 3,'Votos: 4 - Link respuesta -
Para participar activamente de la comunidad primero debes autenticarte, ingresa al sistema.Iniciar Sesión
