Read a File and Divide it by PHP Pages

0

Good I have the code portion to read a file and show it

$file = fopen("../assets/libros/el_libro_de_la_sabiduria/cap_01.htm", "r") or exit("Unable to open file!");
$getline = '';

while(!feof($file))
{
    $getline .= fgets($file). "<br />";
}
$getfile = utf8_encode($getline);
echo '<pre>';
echo $getfile;
echo '</pre>';
fclose($file);

This code takes up the entire file. What I would like to know is. How can I read the file in parts?

That is, I can divide the file by pages (Page 1, Page 2, Page 3, etc.), and I can use links to access them.

Thank you very much for the help you can give me in advance.

The data is sent and received through ajax.

  

EDIT: Basically, divide the file and create pages to go through (Page by page) until the file is finished.

    
asked by J'Esaa 09.11.2018 в 19:08
source

1 answer

1

you can do it like this:

session_start();
// valida que este definida si lo esta toma su valor si no es 0
$_session["lines"] = $_session["lines"] ?? 0; 
$limit =10;   // envia de solo 10 lineas

$file = fopen("../assets/libros/el_libro_de_la_sabiduria/cap_01.htm", "r") or exit("Unable to open file!");
$getline = '';

while(!feof($file))
{

    $getline .= fgets($file). "<br/>";
}
$getfile = utf8_encode($getline);
echo '<pre>';
// creamos un arreglo en base a las lineas que alla
$lineas = explode("<br>",$getfile)
//validamos que queden lineas para leer
if(count($lineas) <= $_session["lines"]){
// imprimimos solo las posiciones de 0 a 10 o 11 a 20
echo array_slice($lineas, $_session["lines"], $_session["lines"]+$limit);
$_session["lines"]=($_session["lines"]+$limit)+1;
echo '</pre>';
}

fclose($file);
    
answered by 09.11.2018 в 19:49