内容简介:[回忆曾经]PHP面向对象基础学习笔记(二)
[TOC]
"回忆曾经"系列
曾经手写的笔记(以前我一共有两本笔记本,一本是完整版,其中的笔记都是非常完整的,另一本是副本,笔记是残缺的)
完整版和副本什么区别捏?
因为当初我在完整版内写的笔记都是草写的,虽然完整但是字有点丑。
所以想到了再拿一个笔记本认真的将完整版内的笔记重新记录一遍,但是后来因为忙的原因就没有继续记录了。
直到想起来打算继续写的时候,发现完整版已经不见了,感觉非常可惜!
现在打算将部分内容以这种形式敲出来,算是给自己重新巩固巩固吧,同时说不定也能帮助到有需要的兄台(有错误地方望指出)。
面向对象编程 -- OOP(Object Oriented Programming)
1.抽象方法
-
没有方法体的方法,必须要用
abstract
修饰; -
不能是
private
, 不能是static
的; -
必须以分号结尾;
2.接口定义与实现
2.1.接口定义格式
interface 接口名 [extends 父接口名] { [常量] [抽象方法] }
2.2.特性
-
接口里面只能有常量和抽象方法;
-
接口与接口之间是继承关系;
-
借口在类之间实现是用
implements
,并且可以多实现(用逗号分开); -
类在继承其它类的同时还可以实现接口(多实现);
2.3.与抽象类的区别
-
如果只是单纯的定义规范,两种都可以使用;
-
如果在定义规范的时候还想共享一些方法,那只能用
abstract
抽象类;
3.异常类
3.1.错误类型
-
语法错误,最严重的错误,一行代码都不执行(最好排错);
-
运行时错误,永远不要相信你的用户,只能依靠数据验证;
-
逻辑错误,死循环;
3.2.错误级别
-
notice,提示级别,通常可以无视它;
-
warning,警告级别;
-
error,错误级别,后续代码都不执行;
3.3.开启错误显示
- php.ini:
display_errors = on;
- 临时修改配置文件,只对当前脚本有效:
php文件内输入。ini_set('display_errors','on');
- 通过函数来配置错误显示级别,只对当前脚本有效:
error_reporting(E_ALL & ~E_NOTICE);除了notice的所有错误;
- 用户自定义错误
set_error_handler(回调函数) function 回调函数 (错误级别,错误信息,错误文件,错误行号){}
3.4.异常类:Exception
$e = new Exception; $e->getmessage();//获取异常信息 throw $e;//抛出异常 //语法结构 try { throw new Exception("抛出异常"); //只要抛出异常,这个区间代码就不执行 } catch (Exception e) { $e->getmessage();//捕捉异常 } finally { //无论如何都会执行这个区间的代码 }
4.PDO预处理
- 准备一个DSN:
$dsn = 'mysql:host=主机名;dbname=库名;charset=编码';
- 得到pdo对象:
$pod = new PDO($dsn,'数据库用户名','数据库密码');
- 设置错误模式:
$pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_WARNING); $stmt = $PDO->query($sql);//发送 sql 语句
4.1.预处理流程
前提设置与上方一致;
- 准备一个sql语句模版:
$sql = "insert into 表名(username,password) values(?,?)";
- 发送sql语句模版,得到预处理对象:
$stmt = $pdo->prepare($sql);
- 绑定参数
第一种: $stmt->bindParam(1,变量); $stmt->bindParam(2,变量); //注意:此种方法第一个参数是指从左到右的问号从第几个开始,这里为第一个开始,第二个参数的值必须为变量 第二种: $stme->bindValue(1,变量或者值); $stme->bindValue(2,变量或者值);
- 确定执行:
$stmt->execute();
第二种
- 准备一个sql语句模版:
$sql = "insert into 表名(username,password) values(?,?)";
- 发送sql语句模版,得到预处理对象:
$stmt = $pdo->prepare($sql);
- 接收参数
$username = '接收的参数值'; $password = '接收的参数值'; $data = array($username,$passowrd); 注意:这里的数组只能是下标从0开的一维数组;
- 确定执行的同时传入一个数组:
$stmt->execute($data);
PHP的基本上就在这篇结束了。因为笔记残缺以及我是跳着来写的。所以可能有些兄台想看的并没有在上面。大家可以在网上搜搜自己想要的内容的;
相关资料
[回忆曾经]PHP入门基础学习笔记: http://www.bugsafe.cn/archives/159.html
[回忆曾经]PHP面向对象基础学习笔记(一): http://www.bugsafe.cn/archives/160.html
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- 面向Python,面向对象(基础)
- 面向Python,面向对象(基础3)
- <<深入PHP面向对象、模式与实践>>读书笔记:面向对象设计和过程式编程
- 《JavaScript面向对象精要》之六:对象模式
- 《JavaScript面向对象精要》之三:理解对象
- 面向对象的程序设计之理解对象
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。