用于页面导航的if语句

问题描述

我试图找到一种显示页面导航的方法,但是仅当有30多个项目时才显示,因为1页的限制是最多30个项目。如果有30个以上的项目,则应显示到最多30个项目的下一个列表的页面导航,依此类推...(0-30、30-60、60-90 ...)

if($this->quantity_selected_rows >= $this->items_per_page && $this->quantity_total_rows > $this->items_per_page)
{show navigation}
else
{dont show navigation}

e.g. 
quantity_selected_rows = 30
items_per_page = 100
quantity_total_rows = 30

for clarity:

if(30>=30 && 100 > 30)
{show navigation}
else
{dont show navigation}

我的问题是,如果我过滤网格并准确地给了我30个过滤项目,它将根据我的陈述显示页面导航,这很糟糕。

有没有更好的方法来描述这一点?

谢谢!

解决方法

也许我弄错了,但是您只需要调整if条件:

30>=30的计算结果为true,这就是为什么过滤出30个项目的结果将显示页面导航(至少在您的示例中项目总数为100)

下面的代码执行以下操作:

如果您过滤的结果中有恰好 30 =>没有页面导航
如果过滤后的结果中少于 30 =>没有页面导航
如果您过滤的结果中有多于 30个=>显示页面导航

自从我假设:

如果过滤结果中有30个项目,则总项目必须 至少要30岁以上

您还可以缩短if条件:

if($selectedRows > $itemsPerPage) {
    //Show navigation
} else {
    //Don't show
}

必须更改您的变量以使其在代码段中可执行并且更易读。
您可以更改它以使用您的值而不是硬编码数字。

<?php

$selectedRows = 30;  //Result of filtering the grid
$itemsPerPage = 30;  //maximum amount of items per page
$totalRows    = 100; //Unfiltered grid

if($selectedRows > $itemsPerPage)
echo "Show navigation";
else
echo "Don't show navigation";

https://3v4l.org/rlHYV

请告诉我您是否需要。

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...