Foros del Web » Programando para Internet » PHP »

problemas con implode y explode

Estas en el tema de problemas con implode y explode en el foro de PHP en Foros del Web. Hola amigos de la comunidad,,, tengo el siguiente problema haber si me ayudan leo desde un archivo de texto 600 datos estan en este orden: ...
  #1 (permalink)  
Antiguo 04/01/2012, 12:33
Avatar de sublevar  
Fecha de Ingreso: diciembre-2010
Mensajes: 29
Antigüedad: 12 años, 1 mes
Puntos: 1
problemas con implode y explode

Hola amigos de la comunidad,,,
tengo el siguiente problema haber si me ayudan

leo desde un archivo de texto 600 datos estan en este orden:

hola
chao
nos
vemos
...
entonces rescatos los datos y con la funcion explode las convierto en array de la siguiente manera
$contenido = explode("\n",$contenido);

y lo que quiero hacer es colocarle comillas simple a cada elemento pero no he podido, quiero que quede así

'hola'
'chao'
...

he intentado varias formas con el implode me da warning y trate de concatener las comillas
for ($i=0;$i<count($contenido);$i++){
$contenido[$i] = "'" .$contenido[$i]. "'";
fwrite($abrir,$contenido[$i]);
}

pero me da este resultado

'''hola
''chao
''nos
''vemos
...

incluso hice esto y me da el mismo resultado

for ($i=0;$i<count($contenido2);$i++){
$number = strlen($contenido2[$i]);
$number2 = $number + 2;
if ($number != $number2)
$contenido2[$i] = str_pad($contenido2[$i],$number2,"'", STR_PAD_BOTH);
fwrite($abrir,$contenido2[$i]);
}

haber si alguien ha hecho algo similar para que me heche una mano,,,

Gracias, estaré atento
  #2 (permalink)  
Antiguo 04/01/2012, 12:40
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 14 años, 8 meses
Puntos: 528
Respuesta: problemas con implode y explode

pues parece extraño, aunque igual podrías hacerlo más simple:

Código PHP:
Ver original
  1. foreach ($contenido as $i =>$val){
  2.            fwrite($abrir,"'$val'\n");
  3. }
  #3 (permalink)  
Antiguo 04/01/2012, 14:31
Avatar de sublevar  
Fecha de Ingreso: diciembre-2010
Mensajes: 29
Antigüedad: 12 años, 1 mes
Puntos: 1
Respuesta: problemas con implode y explode

Gracias por responder, pero no me resulto me genero algo así

'hola
chao
nos
vemos'

:(

Saludos
  #4 (permalink)  
Antiguo 04/01/2012, 15:17
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 11 años, 6 meses
Puntos: 793
Respuesta: problemas con implode y explode

No es necesario usar implode ni explode, para eso existe file. Puedes hacer algo así:

Inicial en el test.txt

Cita:
Andres
Juan
Maria
Carlos
Jose
Maria
Eduardo
Prueba
Juan
Código PHP:
Ver original
  1. <?php
  2. $f = 'test.txt';
  3. $l = file($f);
  4.  
  5. $h = fopen($f, 'w');
  6. foreach ($l as $v) {
  7.     $v = trim($v);
  8.     fwrite($h, "'$v'" . PHP_EOL);
  9. }
  10.  
  11. fclose($h);

Resultado:

Cita:
'Andres'
'Juan'
'Maria'
'Carlos'
'Jose'
'Maria'
'Eduardo'
'Prueba'
'Juan'
Creo que es lo que intentas hacer, cualquier cosa avisa y lo seguimos mirando.

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

Última edición por andresdzphp; 04/01/2012 a las 15:54
  #5 (permalink)  
Antiguo 04/01/2012, 17:13
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 14 años, 8 meses
Puntos: 528
Respuesta: problemas con implode y explode

si con el código que te puse imprime

'hola
chao
nos
vemos'

es que no estás partiendo bien la cadena (con explode), a lo mejor el caracter debería ser \r en vez de \n
  #6 (permalink)  
Antiguo 06/02/2012, 14:29
Avatar de sublevar  
Fecha de Ingreso: diciembre-2010
Mensajes: 29
Antigüedad: 12 años, 1 mes
Puntos: 1
Respuesta: problemas con implode y explode

Gracias por sus respuesta de verdad me sirvio se me habia olvidado responder, @andresdzphp, interesante la logica funciona de maravilla, @ocp001a era eso no estaba partiendo bien l cadena,,,

Saludos y gracias

doy por cerrado el tema

Etiquetas: explode, implode
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 17:59.