php面向对象总结

php面向对象DB封装类总结

一,面向对象编程思想:

1.面向对象是一种编程思想

2.面向队形是以对象事物为中心的编程思想

3.面向过程着重于做什么,面向对象着重谁来做

类和对象的关系

  1. 类是类别,分类,概念,无形的,看不见的
  2. 对象是具体的,对象由类产生,一个类可以产生n个对象
  3. 类和函数相似,都是代码封装而成的,都有驻留内存,但类内存少,对象占用内存多。

面向对象的优点:易扩展,适合项目开发

面向对象的三大特性:封装,继承,多态

二,类的封装

类里边只有属性和方法


class Student
{
    //定义学生类的属性
    public $no;
    public $name;
 
    //方法定义
    public function study()
    {
        echo '学生在学习';
    }
 
}

属性:class是定义类的关键字,为类名,类名为student最好选择驼峰式命名

用$定义,前边需要加上修饰符

  • php中有3中访问修饰符:public protected private;
  • public:表示公有的;可在本类、子类、对象实例中访问。
  • protected:表示受保护的;可在本类、子类中访问;不能在对象实例中访问。
  • private:表示私有的;可在本类中访问;不能在子类、对象实例中访问。

 

方法:function是定影方法的关键字,study为方法名,()里边可以有参数,也可以没有参数

 

实例化对象:实例化对象可以创建一个对象,通过对象访问其属性和方法。

实例化对象: $ obj=new className ()小括号可有可无

一个类可以创建千千万万个对象,每个对象都占用内存。

 $ obj=new className ()

//实例化对象
$obj = new Student();

属性赋值需要用->赋值

//赋值
$->obj = '1805001';
$obj->name = "张三";

调用执行方法:$obj->study();

构造方法:构造方法的作用, 对象初始化。例如,给对象属性赋值、数据库对象初始化(连接、选择数据)

function __construct(){}

 

析构方法:

构造方法一般不需要主动调用。网页执行完毕时,对象销毁前,自动调用,构造方法的作用,垃圾回收工作,例如,断开到mysql的连接。

function __construct(){}

 function __destruct()
    {
        //关闭数据库连接,
        mysqli_close($this->$连接);
        echo "断开数据库连接";
    }

引用文件:include,include_once,require,require_once

DB类的封装

需要知道的一些函数:

mysqli_connect:连接数据库

mysqli_connect_errno(): 函数返回上一次连接错误的错误代码

mysqli_connect_error(): 函数返回上一次连接错误的错误描述,返回错误代码值,如果没有错误发生则返回 0

mysqli_set_charset():设置字符集

mysqli_close:关闭数据库

 //删除数据
    function del($table,$where ='1=1')
    {
        $values = '';
        foreach ($where as $k => $v) {
            $values .= "{$k}='{$v}',";
        }
        $values = rtrim($values, ',');
        $condition = '';
        if (is_array($where)) {
            foreach ($where as $k => $v) {
                $condition .= " {$k}='{$v}' and";
            }
            $condition = substr($condition, 0, 2);
        } else {
            $condition = $where;
        }
        $sql = "delete from  {$table} where ($condition)";
        //执行sql指令
        $ret = mysqli_query($this->save, $sql);
        return $ret;

    }
    //修改数据
    function update($table, $data, $where = '1=1')
    {

        if (!is_array($data)) {
            die('第二个参数必须是数组');
        }
        $values = '';
        foreach ($data as $k => $v) {
            $values .= "{$k}='{$v}',";
        }
        $values = rtrim($values, ',');
        $condition = '';
        if (is_array($where)) {
            foreach ($where as $k => $v) {
                $condition .= " {$k}='{$v}' and";
            }
            $condition = substr($condition, 0, -3);
        } else {
            $condition = $where;
        }
        $sql = "update {$table} set {$values} where {$condition}";
        $ret = mysqli_query($this->save, $sql);

    }

增加:$db->add('student',['no'=>'123','name'=>'张三','sex'=>'女','age'=>30]);

删除:$db->del('student',['no'=>'1831148']);

修改:$db->update('student',['no'=>'568','name'=>'小红']);

查询:

$db->getALL('student');
$arr = $db->getALL('student','no,name');
print_r($arr);

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值