Código:
Este es la pieza del código donde se localiza el error:Fatal error: Out of memory (allocated 1084751872) (tried to allocate 32 bytes) in D:\wamp\www\dbf2MySql\LeerDbase.php on line 65
Código PHP:
echo "Por favor espere...<br/>";
for ($valor = 1; $valor <= count($archivos); $valor++) {
//echo $valor;
//echo $archivos[$valor]; echo "<br/>";
$fichero_dbf = "tmp/". $archivos[$valor];
$conex = dbase_open($fichero_dbf, 0); //abro el archivo
if($conex){ //si la conexión es buena, realizo la migración
$arrData = array();
$total_registros = dbase_numrecords($conex);
for ($i = 1; $i <= $total_registros; $i++){
$arrData[] = dbase_get_record_with_names($conex,$i); //<-- Esta es la línea que arroja el problema
}
// Obtener la información de columna
$info_columna = dbase_get_header_info($conex);
//Busco los titulos o cabeceras
for ($i = 0; $i < count($info_columna); $i++) {
$titulos[$i] = $info_columna[$i]['name'];
if (in_array($info_columna[$i]['name'], $titulos)) {
$titulos[$i] = $info_columna[$i]['name']."_".$i;
}
}
//print_r($titulos);
//echo DibujarTabla($titulos, $arrData);
$arreglo = explode(".", $archivos[$valor]);
//Paso los datos a mysql
CrearTablaMySql($arreglo[0], $dbf2MySql, $titulos, $arrData, $database_dbf2MySql, $total_registros);
}else{
echo "No se pudo acceder al fichero dbf -> '" . $fichero_dbf . "'<br/>"; //Si me da un error muestro un error
}
dbase_close($conex); //Cierro la conexión al archivo
if ($valor == (count($archivos))) {
echo "FINALIZADO";
mysqli_close($dbf2MySql);
}
}
EDICION
Aca el codigo completo
http://goo.gl/aHURGl
EDICION
Ok, me decidi a hacerlo mediante consola, y ejecutar un .bar pero me ocurre el siguiente error en la consola: Fatal error: Call to undefined function dbase_open() in D:\wamp\www\dbf2MySql\Co
mmandScript.php on line 33
Call Stack:
0.0007 273304 1. {main}() D:\wamp\www\dbf2MySql\CommandScript.php:0