PHP代码复用思路
代码复用说白了就是同一段逻辑别写第二遍,思路就三条:抽函数、拆文件、传参。
最常用的是把公共逻辑写成函数,扔进单独文件,哪个页面要用就 include 进来。
// db.php 公共文件,谁用谁引
function db(){
static $pdo = null; // 静态变量,整个请求只连一次
if($pdo === null){
$pdo = new PDO('mysql:host=127.0.0.1;dbname=test','root','123456');
}
return $pdo;
}
// 分页函数,能变的都做成参数
function page($table, $p = 1, $size = 10){
$p = max(1, (int)$p);
$sql = "select * from {$table} limit ".($p-1)*$size.",{$size}";
return db()->query($sql)->fetchAll(PDO::FETCH_ASSOC);
}
用的时候:
require_once 'db.php'; // 必须依赖的用 require_once
$list = page('user', $_GET['p']);
print_r($list);
要点是别把值写死。写死一次,下次只能复制粘贴再改,改漏一处就出 bug。能变的都塞进参数,函数到处能调。
include 和 require 的区别:文件找不到时 require 直接报错停掉,include 只警告继续跑。数据库连接这种不能缺的,用 require_once。
再往上一步就是分目录:config 放配置,lib 放函数,页面只写业务。改数据库密码只动一个文件,几十个页面不用挨个翻。
说点什么 0