Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP读取文本文件行限制最后20行,下一页/上一页_Php_Limit_Fopen_Lines - Fatal编程技术网

PHP读取文本文件行限制最后20行,下一页/上一页

PHP读取文本文件行限制最后20行,下一页/上一页,php,limit,fopen,lines,Php,Limit,Fopen,Lines,我需要以下方面的帮助: 将文件/var/log/syslog读入HTML页面,限制为最后20行,然后单击next/prev按钮尝试以下代码 <?php $lines = file($_SERVER['DOCUMENT_ROOT'] . '/inc/data.txt'); # This is your text file. $line_amount = count($lines); #echo '<pre>'; print_r($lines); echo '</pre>

我需要以下方面的帮助:

将文件/var/log/syslog读入HTML页面,限制为最后20行,然后单击next/prev按钮

尝试以下代码

<?php
$lines = file($_SERVER['DOCUMENT_ROOT'] . '/inc/data.txt'); # This is your text file.
$line_amount = count($lines);
#echo '<pre>'; print_r($lines); echo '</pre>';

$perpage = 20;

$p = isset($_GET['p']) ? $_GET['p'] : 1;
for ($i = (($p * $perpage) - $perpage); $i <= (($perpage * $p) - 1); $i++){
    if($i >= $line_amount){
        break;
    }
    else{
        if($lines[$i] != ''){
            echo ''.$lines[$i].'<br />'; # This is the output loop.
        }
    }
}

//$p = $p + $perpage;

?>            
<table summary="" cellpadding="10" cellspacing="0"  border="0" class="global-links-menu">
        <tr>
<?php

$total_pages = $line_amount/$perpage;
if($line_amount % $perpage != 0){
    $total_pages = $total_pages + 1;
}


if($p!=1)
{
  $back_page=$p-1;
    echo "<td ><a href='?p=$back_page'>Back</a></td>";
}
else
{
    $back_page=$p-1;
    echo "<td >Back</td>";
}

for($j=1;$j<=$total_pages;$j++)
{

    if($j==$p)
    {        
        echo "<td >$p</td>";
    }
    else
    {
        echo "<td ><a href='?p=$j'>$j</a></td>";    
    }
}

if($p <= $total_pages - 1){
    $next_page=$p+1;
    echo "<td ><a href='?p=$next_page'>Next</a></td>";    
}
else
{
    echo "<td >Next</td>";
}
?>
    </tr></table>

您最好的选择是生成一个sudoed
尾部:PHP进程通常无法读取系统日志文件

使用
visudo
或您选择的工具正确配置
sudoers
文件,然后:


“下一步/上一步”按钮可用于配置上述数字。在这里,我正在读取syslog的最后20行,并输出前10行。在某种程度上,与MySQL的LIMIT选项没有什么不同。

向我们展示您迄今为止所做的尝试我的工作!:D谢谢你!!!
$output = shell_exec('/path/to/sudo /path/to/tail -n 20 /var/log/syslog | head -n 10');