Foros del Web » Programando para Internet » PHP »

Archivo de Texto en un Array

Estas en el tema de Archivo de Texto en un Array en el foro de PHP en Foros del Web. Hola a todos tengo el siguiente problema, tengo el siguiente archivo de texto: id^nombre^apellido^email #1^Manuel^Gonzalez^[email protected] #2^Luis^Patiño^[email protected] #3^Alberto^Castrellon^[email protected] bueno, mi problema es que quiero que los ...
  #1 (permalink)  
Antiguo 16/08/2005, 13:06
Avatar de don_fransisco  
Fecha de Ingreso: junio-2004
Mensajes: 193
Antigüedad: 19 años, 10 meses
Puntos: 1
Archivo de Texto en un Array

Hola a todos tengo el siguiente problema, tengo el siguiente archivo de texto:

id^nombre^apellido^email
#1^Manuel^Gonzalez^[email protected]
#2^Luis^Patiño^[email protected]
#3^Alberto^Castrellon^[email protected]

bueno, mi problema es que quiero que los campos ID-Nombre-Apellido-Email queden como claves en un array y los otros registros como [email protected] como valores dentro de un array:

en resumen como hago para capturar esos datos que estan en un archivo de texto y meterlos en un array para que me queden de la siguiente forma:

$datos["id"]=1;
$datos["nombre"]="Manuel";
$datos["apellido"]="Gonzales";
$datos["email"]="[email protected]"

y asi sucesivamente con los registros restantes.

Gracias por cualquier ayuda.
  #2 (permalink)  
Antiguo 16/08/2005, 18:33
Avatar de don_fransisco  
Fecha de Ingreso: junio-2004
Mensajes: 193
Antigüedad: 19 años, 10 meses
Puntos: 1
Gracias por la respuesta
  #3 (permalink)  
Antiguo 16/08/2005, 18:52
Avatar de Seppo  
Fecha de Ingreso: marzo-2005
Ubicación: Buenos Aires, Argentina
Mensajes: 1.284
Antigüedad: 19 años, 1 mes
Puntos: 17
Te dejo un ejemplo de como podés hacer... puse en $archivo el string del archivo que leería
Código PHP:
<?php
$archivo 
=  "id^nombre^apellido^email
#1^Manuel^Gonzalez^[email protected]
#2^Luis^Patiño^[email protected]
#3^Alberto^Castrellon^[email protected]"
;

$archivo str_replace(chr(10),"",$archivo);
$archivo str_replace(chr(13),"",$archivo);
$rows explode("#",$archivo);
$columnas explode("^",$rows[0]);
for (
$a=1;$a<count($rows);$a++) {
    
$info explode("^",$rows[$a]);
    for (
$b=0;$b<count($columnas);$b++) {
        
$datos[$a][$columnas[$b]] = $info[$b];
    }
}
unset (
$columnas,$rows,$archivo,$columnas,$info);
?>
En $datos[numero de linea][nombre del campo] queda la información. Ej.: $datos[3]["email"]
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:28.