fh = fopen($archivo, 'r'); } $this->separadorCampos = $separadorCampos; $this->separadorTexto = $separadorTexto; $this->caracterEscape = $caracterEscape; $this->saltarLineas($posicionActual, $numLineasCabecera); } public function obtenerFila() { return fgetcsv($this->fh, 0, $this->separadorCampos, $this->separadorTexto, $this->caracterEscape); } /** * Avanza el puntero en el archivo CSV. * @param int $posicionActual La linea a procesar. * @param int $numLineasCabecera */ private function saltarLineas($posicionActual, $numLineasCabecera) { if (!$posicionActual) { $posicionActual = $numLineasCabecera; } for ($i = 0; $i < $posicionActual; $i++) { fgetcsv($this->fh, 0, $this->separadorCampos, $this->separadorTexto, $this->caracterEscape); } } /** * Cierra el fichero. */ public function cerrarArchivo() { if($this->fh) { fclose($this->fh); } } }