<?php
class PdoClass{
private $pdo = null;
public function __construct() {
try {
$this -> pdo = new PDO
('mysql:hostname=localhost; dbname=jacklin','root','',
array(PDO::MYSQL_ATTR_INIT_COMMAND => "set names utf8"));
}catch(Exception $e) {
echo "连接失败" . $e -> getMessage;
}
}
public function getRow($sql, $data) {
$stam = $this -> toExec($sql, $data);
return $stam -> fetch( PDO::FETCH_ASSOC );
}
public function getAll($sql, $data) {
$stam = $this -> toExec($sql, $data);
return $stam -> fetchAll( PDO::FETCH_ASSOC );
}
public function getOne($sql, $data) {
$stam = $this -> toExec($sql, $data);
return $stam -> fetch( PDO::FETCH_NUM );
}
public function toExec($sql, $data) {
$stam = $this -> pdo -> prepare ($sql);
$stam -> execute($data);
return $stam;
}
}
?>
总结
类中知识点
1、成员函数,成员属性调用$this->
2、构造函数--construct()运行在类的第一步,常用执行很多基本条件,比如服务器的连接以及变量赋值。
3、析构函数 _ _destruct用于末尾
4、继承 子类继承 class Child extends Parent{//代码}
5、方法重写,也叫覆盖,如果父类方法不能满足需求,可以直接进行重写。
6、访问控制 public protected private 类属性必为其中之一,protected可以被子类和自身调用,private只能自身调用。
7、static 关键字 static标记的属性或方法可以不用实例化而直接访问。伪变量&this在静态方法中可用。静态属性不能有对象通过->来访问。
self:$my_static
Class::$my_static
8、子类不能直接继承父类的构造方法,需要在子类的构造方法中调用, parent::__contruct()
最后 对于$this->的理解,可理解为类本身,在没有实例化之前,内部需要调用属性和方法,就需要一个伪变量,例如实例化之后调用$pdo->name或$pdo ->toExec() $this就相当于$pdo都表示类,只是没有实例化之前,需要一个代替词。