<?
$simbol = "::";
$open = "[";
$close = "]";
$onpage = 3;
$file=file("news.txt");
$all = count($file); //подсчитываем количиство строк (записей)
if(empty($_GET['page'])){$_GET['page'] = 0;} //если переменная $page не задана она становится 0
$begin = $_GET['page'] * $onpage; //откуда начинать выводить записи
$end = $begin + $onpage;//где заканчивать выводить
$pages = $all / $onpage; //сколько страниц генерировать
for($i=$begin;$i<$end;$i++){ //запускаем цикл вывода
if($file[$i]){$ex = explode($simbol,$file[$i]); //если строка существет (..if($file[$i])..), то разбить её символом из переменной $simbol
for($b=0;$b<count($ex);$b++){ // при разбитии функцией explode() мы полочили массив $ex, запускаем цикл который выведет весь массив
echo "<i>".$ex[$b]."</i> ";}
echo "<br>";
}//начали новую строку
} //закончили цикл
for($p=0;$p<$pages;$p++){ //начинаем генирировать страницы
$pg = $p+1;//номер страницы равен: $p + 1
if($_GET['page']==$p){echo $open.$pg.$close; //если просматриваемая страница равна странице, которую выводим ссылку не делаем
}else{ //если нет, то делаем
echo $open."<a href=?page=".$p.">".$pg."</a>".$close;}}//завершили цикл
?>