Foros del Web » Programando para Internet » PHP »

Problemas con array

Estas en el tema de Problemas con array en el foro de PHP en Foros del Web. Hola Compañeros del foro estoy metido en un lio y no puedo salir por eso necesito de su ayuda si hago un print_r a $texto3 ...
  #1 (permalink)  
Antiguo 19/11/2012, 19:00
 
Fecha de Ingreso: octubre-2010
Ubicación: Buenos Aires
Mensajes: 557
Antigüedad: 14 años, 1 mes
Puntos: 4
Problemas con array

Hola Compañeros del foro

estoy metido en un lio y no puedo salir por eso necesito de su ayuda
si hago un print_r a $texto3 me deviuelve esto
Código PHP:
Ver original
  1. (
  2.     [0] => ima/1353246224.jpg
  3.     [1] => ima/1353242823.jpg
  4.     [2] => ima/1353242851.jpg
  5.     [3] => ima/1353242856.jpg
  6. )
ahora quiero recorrer ese array($texto3) y mientras lo recorro le voy reemplazando
algun texto y por el texto que voy a reemplazar que en cada vieltq sea diferente
Código PHP:
Ver original
  1. for($i=0;$i<count($texto3);$i++)
  2. {
  3.     $nuevoContenido=str_replace($texto3,'cid:imagen'.$i,$texto);
  4. }
necesito que
cid:imagen valga cid:imagen0 ,cid:imagen1,cid:imagen2,cid:imagen
pero en las cuatro vueltas me devuelve cid:imagen3 (la ultima)
y la verdad no se como solucionarlo MUchas gracias por cualquier ayuda que me puedan brindar
  #2 (permalink)  
Antiguo 19/11/2012, 19:07
 
Fecha de Ingreso: noviembre-2012
Mensajes: 76
Antigüedad: 12 años
Puntos: 3
Respuesta: Problemas con array

$nuevoContenido[$i]=str_replace($texto3,'cid:imagen'.$i,$texto);
  #3 (permalink)  
Antiguo 19/11/2012, 19:27
 
Fecha de Ingreso: octubre-2010
Ubicación: Buenos Aires
Mensajes: 557
Antigüedad: 14 años, 1 mes
Puntos: 4
Respuesta: Problemas con array

Hola cybervandal gracias por responder , cuando hago echo a $nuevoContenido

me imprime Array

lo que necesito es que cid:imagen se reemplace por $texto3 con un valor diferente en cada reemplazo


Gracias!!!
  #4 (permalink)  
Antiguo 19/11/2012, 19:35
 
Fecha de Ingreso: noviembre-2012
Mensajes: 76
Antigüedad: 12 años
Puntos: 3
Respuesta: Problemas con array

Lo tienes almacenado en $nuevoContenido:

$imagen1= "$nuevoContenido[0]";
$imagen2= "$nuevoContenido[1]";
echo "imagen1: $imagen1 y imagen2: $imagen2";
  #5 (permalink)  
Antiguo 19/11/2012, 19:46
 
Fecha de Ingreso: octubre-2010
Ubicación: Buenos Aires
Mensajes: 557
Antigüedad: 14 años, 1 mes
Puntos: 4
Respuesta: Problemas con array

no, tampoco estoy viendo el manual y me dice que no hay que hacer un bucle
o sea que el primer y el segundo parametro de str_replace() pueden ser arrays pero que contegan la misma cantidad de elementos
Código PHP:
Ver original
  1. // La salida es: apearpearle pear
  2.  
  3. $letters = array('a', 'p');
  4. $fruit   = array('apple', 'pear');
  5. $text    = 'a p';
  6. $output  = str_replace($letters, $fruit, $text);
  7. echo $output;
me sigo fijando
Gracias Saludos!!!
  #6 (permalink)  
Antiguo 19/11/2012, 20:11
 
Fecha de Ingreso: noviembre-2012
Mensajes: 76
Antigüedad: 12 años
Puntos: 3
Respuesta: Problemas con array

La verdad que me he liado yo también... jejejeje... sorry...
Ya me cuentas cuando lo soluciones.
Un saludo!
  #7 (permalink)  
Antiguo 19/11/2012, 20:41
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 13 años, 4 meses
Puntos: 793
Respuesta: Problemas con array

tumbero_x tienes que aprender a diferenciar un array de un string, es cierto que la función str_replace se usan arrays de búsqueda y reemplazo en un string, pero tu tienes es un array de strings. Al hacer esto:

Código PHP:
Ver original
  1. $nuevoContenido=str_replace($texto3,'cid:imagen'.$i,$texto);

Siempre te va a dar el último elemento del array $texto3. Yo opino que la solución que te dió cybervandal es lo correcto, agregar los resultados a un nuevo array o unirlos (.=) en un sólo string si es lo que necesitas.

Saludos.
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #8 (permalink)  
Antiguo 20/11/2012, 03:03
 
Fecha de Ingreso: octubre-2010
Ubicación: Buenos Aires
Mensajes: 557
Antigüedad: 14 años, 1 mes
Puntos: 4
Respuesta: Problemas con array

gracias andresdzphp ya lo solucione
Código PHP:
Ver original
  1. $num   = array();
  2. $h='cid:imagen';
  3. $i=0;
  4. foreach($texto3 as $texto4)
  5. {
  6.      $mail->AddEmbeddedImage($_SERVER['DOCUMENT_ROOT']."/gestion/".$texto4,'imagen'.$i,$texto4);
  7.     $num[]=$h.$i;
  8.                                    
  9. $i++;  
  10.     }
  11. $nuevoContenido=str_replace($texto3,$num,$t);
Saludos a todos!!!
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 21:51.