理论:面向对象
概念:认识或认知事物的一种方式方法,简单点说就是“类比”。
对象是类进行实例化后的结果。
New 一个对象时电脑做的工作:在内存地址中开辟一个空间,把属性放入该空间,执行可能有的语句,把内存地址赋值给变量。
Object ===> 物质、物体
类 ===>属性和行为
(默认情况下是缺少了该属性或行为则类别就无法确认)
扩展的附加行为 ===> 接口
构造函数__construct和析构函数__destruct
特点:三大特征===> 封装、继承、多态
①封装即隐藏 ,隐藏的是被修改的能力(即外部不可随意修改 )
实现封装的手段:访问修饰符、函数方法、类、文件、文件夹
访问修饰符:public(公有的)、protected(受保护的,自己和子类可以使用)、 private(私有的,只有自己可以使用)
②继承 ===>扩展/拓展 关键字:extends PHP是单继承
父类 ===>子类 能看到父类的public 、protected修饰的内容
重写override(什么情况下不能重写:final终态的)
Final(终态的)可修饰函数方法,则函数方法不可重写;可修饰类,则该类不能继承
this(指代当前类的对象,相当于对类的调用)/parent(指代的是父类,也可以追溯父类的父类,后跟域作用符)/self(类自身的内容,调用类自身,可以是静态调用,也可以是常量)
Static(静态的)
③多态 ===>变化的形态 关键字:abstract(抽象的)不可以被实例化,无花括号,打“;”表示结束。
Interface(接口)===>实现implements 可以有无限的接口。
异常处理 屏蔽异常信息:@ 、error-reporting函数和配置、display-errors=off(关闭错误显示)
命名空间 是一种封装事物的方法,是加载到内存中的,作用:分离和隔离可能存在的同名的类。从5.3.0开始存在 关键字:namespace 使用命名空间关键字use ,引用时可以起别名。
include和include_once:如果没有对应的文件,发出错误警告代码继续运行。
require和require_once:如果没有对应的文件,发出错误警告后代码停止运行。
require一般用于包含类文件。include一般用于包含模板文件。
模板引擎 ===>smarty 程序逻辑代码与美工分离、分工
模板文件夹、模板转换后的文件夹、插件库、配置文件、缓存文件
tpl 定界符默认{} ==> 推荐<{ }>
常见的 <{if}>.....<{/if}>
<{foreach}>...
<{foreachelse}>...<{/foreachelse}>
<{/foreach}>
显示到界面 assign() 、 display()
代码: 类 <===> 对象
PDO(php data object)
PDO类
PDOStatement类
New pdo(‘ 数据库连接访问字符串’,’登录用户名’,’登录密码’,’访问额度相关参数’)
mysql:dbname=pg30_2;port=3306;host=127.0.0.1;charset=utf8
第一个参数必须有,可以匿名访问数据库。
exec($sql) ==>int类型
query($sql) ==>PDOstatement类型
prepare($sql) ==>PDOstatement类型
fetch ==>默认返回的是数组,返回一行的一维数组
fetchall ==>以数字和列名为下标的二维数组
fetchobject ==>以对象作为结果返回 有一个类,默认类名:stdclass
execute ==> 执行运行prepare,
smarty