yii2.0 使用分页封装类 分页
第一步:连接收据库,原生代码封装类连的数据库,因为是框架,不能是框架的数据库 第二步:封装的类放在web下面,入口文件,可以自定义;命名 使用封装类 第三步:注意文件名的路径,跳转上一页下一页的路径 下面可以对比看到 <span style="color:#FF0000;">类名 Db.class.php 连接数据库</span> <?php /** * Created by PhpStorm. * User: Administrator * Date: 2016/9/22 * Time: 23:45 */ header("content-type:text/html;charset=utf8"); class Db{ public $host="127.0.0.1"; public $host_name="root"; public $host_pwd="root"; public $db_name="yii"; function connect(){ mysql_connect($this->host,$this->host_name,$this->host_pwd)or die("连接失败"); mysql_select_db($this->db_name)or die("选择失败"); mysql_query("set names utf8"); } } <span style="color:#FF0000;">分页类名</span> page.class.php <?php header("content-type:text/html;charset=utf8"); class page{ /*分页方法 *@param string $table 表名 *@param int $length 一页几个 *@param $file_name文件名 */ function show($table,$length,$where,$file_name){ $sql="select count(*) from $table where $where"; //return $sql;die; $re=mysql_query($sql); $arr=mysql_fetch_assoc($re); //print_r($arr); //总记录数 $num=$arr["count(*)"]; //每页显示的条数 $length=4; //总页数 $pages=ceil($num/$length); //当前页面 $page=isset($_GET["page"])?$_GET["page"]:1; //上一页 $last=$page<=1?1:$page-1; //下一页 $next=$page>=$pages?$pages:$page+1; //尾页 $offset=($page-1)*$length; $sql1="select * from $table where $where limit $offset,$length"; //echo $sql1; //执行取出数据 $re1=mysql_query($sql1); //如果有数据 取出数据 否则返回false; if(mysql_num_rows($re1)>0){ while($arr1=mysql_fetch_assoc($re1)){ //2维数组 $new_arr[]=$arr1; }//print_r($new_arr); $str="<a href="$file_name.php?r=lianxi/list&page=1">首页</a> <a href="$file_name.php?r=lianxi/list&page=$last">上一页</a> <a href="$file_name.php?r=lianxi/list&page=$next">下一页</a> <a href="$file_name.php?r=lianxi/list&page=$pages">尾页</a>"; /*<a href="$file_name.php?page=1">首页</a> <a href="$file_name.php?page=$last">上一页</a> <a href="$file_name.php?page=$next">下一页</a> <a href="$file_name.php?page=$pages">尾页</a>"; * echo $str;die; */ $data["data"]=$new_arr; $data["str"]=$str; //print_r($data);die; return $data; }else{ return false; } } } ?> <span style="color:#FF0000;">命名 控制器</span> use page;<span style="color:#FF0000;">//类名***</span> use Db;/<span style="color:#FF0000;">/注意</span> public function actionList(){ require("page.class.php");//分页 require("Db.class.php");//数据库 $db=new Db();//实例化 $db->connect(); $page=new page(); $arr1= $page->show("shang",4,1,"index");//传来的参数 表名 页 条件1 文件名 $arr=$arr1["data"]; $str=$arr1["str"]; //$arr=Shang::find()->asArray()->all(); return $this->render("list",["list"=>$arr,"str"=>$str]); }<span style="color:#FF0000;"> 视图层</span> <?php foreach($list as $k=>$v){?> <tr> <td><?php echo $v["goods"]?></td> <td><?php echo $v["price"]?></td> </tr> <?php}?> <?php echo $str ?>
声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。