Creo que logre lo que quieres me dejas saber, si el archivo de dbf es muy grande trata de subdividir y crear diferentes archivos y en la variable $file le vas cambiando el valor. Espero que sea lo que estabas buscando. Si puedes trata de cambiar el tiempo de ejecucion por un numero mayor por ejemplo ve al php.ini y donde dice max_execution_time = 30 cambialo a 300 que son 5 minutos para que el codigo corra por 5 minutos.
Código PHP:
$file = file("info.dbf");
$i = "";
foreach($file as $k => $v){
$v = trim($v);
if(!empty($v)){
$i .= $v."\n";
}else{
$insert[] = $i;
$i = "";
}
}
$bool = false;
foreach($insert as $kk => $vv){
$result = mysql_query($vv);
if($result){
$bool = true;
}else{
echo "<b>Problemas con la linea que tiene esta información. Todos los query anteriores fueron añadidos a la base de datos.</b><br />"
. nl2br($vv);
$bool = false;
break;
}
}
if($bool){
echo "<b>Se inserto toda la base de datos.</b>";
}