zf框架db类的分页示例分享

zf框架的分页示例

代码如下:
PHP
isset($_GET['page']) ? $page = $_GET['page'] : $page = 1;
//引入Loader类(自动加载类)
require_once("Zend/Loader.PHP");
//使用Loader类引入一个Db类
Zend_Loader::loadClass("Zend_Db");
//引入Zend_Db的状态器
Zend_Loader::loadClass("Zend_Db_Statement_Pdo");
//配置数据库连接信息
$Config = array('host' => '127.0.0.1',
'username' => 'root',
'password' => '111',
'dbname' => 'test',
'profiler' => "true"
);
//告诉Zend_Db类所操作的数据库数据库配置信息
$Db = Zend_Db::factory('PDO_MysqL',$Config);
//执行编码语句
$Db -> query("set names utf8");
//-----------------------------------------------
//使用fetchOne()方法得出表的总条数
$Total = $Db -> fetchOne("select count(*) from gongsi");
//定义每页显示条数
$B = 50;
//得出总页数
$A = ceil($Total/$B);

//-----接下来为一系列的查询表、取结果集、分页等操作
$Select = $Db ->select();
$Select -> from('sanguo',array('s_sheng as 省份','sum(s_gongzi) as 总工资','min(s_gongzi) as 最低工资','max(s_gongzi) as 最高工资','avg(s_gongzi) as 平均工资'));
// $Select -> Where('s_gongzi>=3000');
// $Select -> Where("s_sheng='河北'");
// $Select -> order('s_sheng asc');
// $Select -> order('s_gongzi desc');
$Select -> group('s_sheng'); //分组
//$Select -> having('最高工资>10000'); //附加条件
$Select -> order('最高工资 desc'); //排序
$Select -> limit(0,0); //截取
$Select -> limitPage($page,$B); //分页
/*sql语句相当于:
select s_sheng as 省份,sum(s_gongzi) as 最高工资 from sanguo group by s_sheng having 最高工资>10000 order by 最高工资 desc limit 0,10;
*/
$Result = $Db->fetchAll($Select);

echo "

";
echo "省份foreach ($Result as $key => $value)
{
echo "foreach ($value as $key2 => $value2)
{
echo "}
echo "
}
echo "echo "
总工资最低工资最高工资平均工资";
echo "首页";
if ($page>1)
{
echo "";
}
for ($i=1; $i <=15 ; $i++)
{
echo "
".$i."";
}
if ($page<$Total)
{
echo "";
}
echo "
";
echo "echo "echo "?>

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...