Foros del Web » Programando para Internet » PHP »

cortar string

Estas en el tema de cortar string en el foro de PHP en Foros del Web. Tengo la sigiente pregunta Estoy recorriendo un Array y en el campo Valor debo cortar el string con un salto de carro cuando encuentre el ...
  #1 (permalink)  
Antiguo 29/08/2003, 13:35
Avatar de Chuty  
Fecha de Ingreso: noviembre-2002
Ubicación: el bar de la esquina
Mensajes: 609
Antigüedad: 21 años, 5 meses
Puntos: 2
cortar string

Tengo la sigiente pregunta
Estoy recorriendo un Array y en el campo Valor debo cortar el string con un salto de carro cuando encuentre el caracter #.

Por ejemplo

Código PHP:
array (
        
'GRUPO_00A '  => 'GRUPO A ',
        
'GRUPO_00B ' => 'GRUPO B #20030303',
        
'GRUPO_00C '  => 'GRUPO C ',
        
'GRUPO_00D '  => 'GRUPO D '),

foreach (
$LegArray as $clave => $valor) {
echo 
"<b>".$clave ."</b> tiene el valor de "$valor."<br>"

GRUPO_00A tiene el valor de GRUPO_00A
GRUPO_00B tiene el valor de GRUPO_00B #20030303
GRUPO_00C tiene el valor de GRUPO_00C
GRUPO_00D tiene el valor de GRUPO_00D

y lo que quiero es que haga

GRUPO_00A tiene el valor de GRUPO_00A
GRUPO_00B tiene el valor de GRUPO_00B
#20030303
GRUPO_00C tiene el valor de GRUPO_00C
GRUPO_00D tiene el valor de GRUPO_00D

Se puede ....
Bueno desde ya muchas gracias y saludos a Todos
  #2 (permalink)  
Antiguo 29/08/2003, 14:15
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Hola,

Planteando el problema de otra forma, quieres que cuando se encuentre con #, muestre <br>#. Dicho de otra forma, quieres sustituir la cadena # por la cadena <br>#. Y para ello puedes usar str_replace() (www.php.net/str_replace). Algo como:
Código PHP:
foreach ($LegArray as $clave => $valor) {

echo 
"<b>".$clave ."</b> tiene el valor de "str_replace('#','<br>#',$valor)."<br>"


Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #3 (permalink)  
Antiguo 29/08/2003, 15:06
Avatar de Chuty  
Fecha de Ingreso: noviembre-2002
Ubicación: el bar de la esquina
Mensajes: 609
Antigüedad: 21 años, 5 meses
Puntos: 2
Gracias Josemi por la respuesta,
pero quiero complicarlo mas el ejemplo por ejemplo

array (
'GRUPO_00A ' => 'GRUPO A ',
'GRUPO_00B ' => 'GRUPO B #20030303 *TEXTO %PRECIO ',
'GRUPO_00C ' => 'GRUPO C ',
'GRUPO_00D ' => 'GRUPO D '),

si quiero hacer lo mismo con # * % como seria....
desde ya muchas gracias y saludos
  #4 (permalink)  
Antiguo 29/08/2003, 15:27
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Bien, solo tendiras que hacer el str_replace() del str_replace() del str_replace() de la cadena. Algo como:
Código PHP:
foreach ($LegArray as $clave => $valor) {



echo 
"<b>".$clave ."</b> tiene el valor de "str_replace('#','<br>#',str_replace('%','<br>%',str_replace('*','<br>*',$valor)))."<br>"




Recuerda que str_replace() sustituira todas las apariciones de esos caracteres, no solo la primera.

Suerte.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #5 (permalink)  
Antiguo 29/08/2003, 20:17
Nok
 
Fecha de Ingreso: abril-2001
Mensajes: 302
Antigüedad: 23 años
Puntos: 0
nose si me estoy perdiendo algo del problema pero la respuesta mas optima seria...

Código PHP:
$cambios = array('#''%''*');
$cambiar_por = array('<br>#''<br>%''<br>*');

foreach (
$LegArray as $clave => $valor) {

echo 
"<b>".$clave ."</b> tiene el valor de "str_replace($cambios,$cambiar_por,$valor)."<br>"


ya que str_replace() permite el pasaje de arrays().

Saludos.
Pablo.
__________________
La casa de Noktemplate.
Zonaphp.com - Php en español.

¿Que esperas de NokTpl 2? Deja tu comentario.

Blog
Mas o menos asi .
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:42.