este es mi codigo.. Código PHP:
$row = 1;
$fp = fopen ("llamadas.txt","r");
while ($data = fgetcsv ($fp, 1000, " "))
{
$num = count ($data);
print " <br>";
$row++;
echo "$row- ".$data[0].$data[1].$data[2].$data[3].$data[4]......;
este es mi archivo..
Date Time Ext CO Dial Number Ring Duration Acc code CD
--------------------------------------------------------------------------------
22/12/09 08:50AM *911 00 109492591 00:01'13 2809
22/12/09 08:50AM *128 00 1096192249 00:01'27 2518
22/12/09 08:51AM 2000 85 <I>595782232458 0'03 00:00'37 D0
22/12/09 08:51AM 2000 95 <I> 0'03 00:00'08 D0
22/12/09 08:51AM 2451 LOG OUT
22/12/09 08:51AM *894 00 1090228636811 00:00'57 2800
si separo con
espacios me pone en diferentes data[*] los campos de acuerdo a los
espacios q hay ya que no siempre tienen la misma cantidad de
espacios como separo para que siempre caiga en el mismo data[*]? Solucionado:
$filas=file('llamadas.txt');
$i=0;
while($filas[$i]!=NULL){
$filallamada=$filas[$i]; // toma las filas del archivo llamada.txt y tira a la bbdd
$i++;
$incoming=substr($filallamada,27,1);
if($incoming=='I'){
$date=substr($filallamada,0,8);
$dia=substr($date,0,2);;
$mes=substr($date,3,2);
$ano=substr($date,6,2);
$ano1=$ano+2000;
$date8=$ano1.$mes.$dia;
$time=substr($filallamada,10,7);
$ext=substr($filallamada,18,5);
$numero=substr($filallamada,29,23);
$ring=substr($filallamada,52,4);
$ring=str_replace("'",":", $ring);
$duracion=substr($filallamada,57,8);
$duracion=str_replace("'",":", $duracion);
//GRABO EN LA BBDD LOS DATOS DEL ARCHIVO LLAMADAS.TXT
include('conectar_AS.php');
$graba="insert into llamadas (fecha,fecha8,hora,interno,numero_ent,ring,duracio n) values ('$date','$date8','$time','$ext','$numero','$ring' ,'$duracion')";
$resul = mysql_query($graba);
echo $date," - ". $time," - ". $ext," - ". $numero," - ". $ring," - ".$duracion."<br>" ;
}
}