mysql 进阶小知识与类的初识
程序员文章站
2022-03-13 12:35:05
...
mysql 进阶小知识与类的初识
mysql 进阶小知识
- bindParam 绑定
mysql 的绑定 除了 bindParam 外还有一个 bindColumn,它可以把 mysql 读取出来的一列数据保存到变量中,然后可以搭配 fetch(PDO::FETCH_ASSOC)对某项内容进行循环遍历
try{
//$pdo最后一个参数中,加入数组array(PDO::MYSQL_ATTR_INIT_COMMAND=>'SET NAMES utf8')可以配置编码格式
$pdo = new PDO('mysql:host=localhost;dbname=test','root','root');
}catch(PDOException $e){
echo '数据库连接失败'.$e->getMessage();
}
$pre = $pdo->prepare('SELECT * FROM `mall_user`');
$exe = $pre->execute();
//把mysql读取出来的一列数据保存到$username变量中
$pre->bindColumn('username',$username);
//取出关联部分,判断如果该值存在则输出循环
while($pre->fetch(PDO::FETCH_ASSOC)){
echo '用户名:'.$username.'<br/>';
}
-
设置字符集
有时我们需要给 pdo 设置一个字符集,以防乱码的出现,给 pdo 设置字符集可以用以下两种方式实现
-
\$pdo 最后一个参数中,加入数组 array(PDO::MYSQL_ATTR_INIT_COMMAND=>’SET NAMES utf8’)可以配置编码格式
$pdo = new PDO('mysql:host=localhost;dbname=test','root','z1071930401',array(PDO::MYSQL_ATTR_INIT_COMMAND=>'SET NAMES utf8'));
-
或者单独配置编码格式
$pdo->query('SET NAMES utf8');
-
-
关闭 pdo 连接
关闭 pdo 连接有两种方法:- 给一个空值
$pdo = null;
- 销毁变量
unset($pdo);
- 给一个空值
-
mysql 统计条数 count
执行查询语句时,可以加入 count 以统计查询的条数,其中* 也可以替换为字段名SELECT count(*) FROM `mall_user`;
-
字段临时重命名 as
当读取多张表时,字段有可能会有重复,此时可以使用 as 给字段临时重命名SELECT `username` as uname FROM `mall_user`;
类的初识
-
类是泛指一类的内容,这一个类中的东西具有相同的一些特性、功能等,但是每个类的个体又是完全独立的。
-
类的创建使用 class 关键字+类名+{}
class Teacher{}
-
将类的个体生成是类的实例化,也就是生成一个对象,使用 new 关键字+类名+括号来生成。
new Teacher()
-
类里面可以使用 public 关键字去添加成员变量跟成员方法
class Teacher{
public $name = 'admin';
public function teach(){
echo 'teach php';
}
}
- 外部访问里面的成员变量跟成员方法使用->符号进行访问
$teacher = new Teacher();
$teacher->$name;
$teacher->teach();
- 构造函数__construct()
使用构造函数可以在开始的时候往里传值,保证需要的变量都能有值
class Teacher{
public $name = 'admin';
public function __construct($n){
//$this代表本类,它不仅可以访问本类里的成员变量,还能访问本类里的成员方法
$this->name = $n;
}
}
- 析构函数__destruct()
析构函数会在类的所有代码执行完毕后自动调用执行,可以用来做日志记录
class Teacher{
public $name = 'admin';
public function __construct($n){
$this->name = $n;
}
public function __destruct(){
echo '执行完毕';
}
}
上一篇: php的explode() 函数将字符串打散为数组
下一篇: PHP生成随机数