Leer un archivo de texto y guardar la información en una base de datos mysql con php

Stay hungry, stay foolish

Steve Jobs

Hola a todos, en esta ocasión publicare un código para leer el contenido de un archivo txt  y guardar su información en una base de datos mysql con PHP.

ARCHIVO DE TEXTO

En el archivo de texto los valores se encuentran separados por un tabulador y tienen la siguiente estructura: clave, descripcion, precio

A001	ADAPTADOR DE AUDIO USB	120.00
A002	ADAPTADOR DE RED INALAMBRICO   149.00
A003	MONITOR LED LG 18.5"	1699.00

CODIGO PHP

Lo primero que vamos a hacer es establecer la conexión con la base de datos para guardar la información en la tabla productos


$conexion = new mysqli("localhost", "usuario", "password", "basedatos", "3306");

Ahora si vamos con el código que lee el archivo, para esto utilizamos la función  file, que se encarga de mandar la informacion del archivo a un arreglo .


$lineas = file('articulos.txt');

Luego iniciamos un ciclo para leer todas las lineas que contenga el archivo, aquí vamos a almacenar el contenido de cada linea en una arreglo llamado datos lo hacemos con la función explode que buscara cada tabulador. Con la función trim eliminamos los espacios en blanco que hayan quedado al principio y final de cada dato. Posterior mente creamos la consulta y la ejecutamos.


foreach ($lineas as $linea_num => $linea)
{
	$datos = explode("\t",$linea);

	$clave = trim($datos[0]);
	$producto = trim($datos[1]);
	$precio = trim($datos[2]);

    $consulta = "INSERT INTO tblproducto(clave,producto,precio) VALUES('$clave','$producto',$precio)";
	$conexion->query($consulta);
}

Aquí les dejo el código completo para descarga: Leerarchivosphp
Espero que les sirva.