我有这个分页类,自从我开始学习 OOP 以来,我将它从一个普通的过程函数转换为一个类。以旧的程序方式,该功能运行良好,但我无法让这个新的类版本显示在屏幕上
class Pagination {
public function __construct() {
}
/**
* This function is called whenever the there are several records to be displayed in the table
* This saves the page extending further down the page creating a long list of results
* when all the results can be spread across multiple pages
*/
public function pagination_one($total_pages, $page, $webpage) {
// Maximum number of links per page. If exceeded, google style pagination is generated
$max_links = 6;
$h=1;
if($page>$max_links) {
$h=(($h+$page)-$max_links);
}
if($page>=1) {
$max_links = $max_links+($page-1);
}
if($max_links>$total_pages) {
$max_links=$total_pages+1;
}
echo '<div class="page_numbers">
<ul>';
if($page>"1") {
echo '<li class="current"><a href="/'.$webpage.'/1">First</a></li>
<li class="current"><a href="/'.$webpage.'/'.($page-1).'">Prev</a></li> ';
}
if($total_pages!=1) {
for ($i=$h;$i<$max_links;$i++) {
if($i==$page) {
echo '<li><a class="current">'.$i.'</a></li>';
}
else
{
echo '<li><a href="/'.$webpage.'/'.$i.'">'.$i.'</a> </li>';
}
}
}
if(($page >="1")&&($page!=$total_pages)) {
echo '<li class="current"><a href="/'.$webpage.'/'.($page+1).'">Next</a></li>
<li class="current"><a href="/'.$webpage.'/'.$total_pages.'">Last</a></li>';
}
echo '</ul> </div>';
}
在另一个类的其他地方,我想创建该类的一个新实例,并在返回中传递该方法以及一些参数
public function paging() {
if($this->getcount != 0) {
$this->paging = new Pagination();
return $this->paging->pagination_one($this->total_pages, $this->page, 'news');
}
}
当我尝试 var_dump() 时,它显示为 NULL,我希望在屏幕上看到一些分页。
我必须改变什么才能显示分页?我是否必须在 Pagination 类中为 $total_pages、$page 和 $webpage 创建一些变量,并在构造函数中初始化它们并将它们从 pagination_one 方法中删除?