[回忆曾经]PHP面向对象基础学习笔记(二)

栏目: PHP · 发布时间: 6年前

内容简介:[回忆曾经]PHP面向对象基础学习笔记(二)

[TOC]

"回忆曾经"系列

曾经手写的笔记(以前我一共有两本笔记本,一本是完整版,其中的笔记都是非常完整的,另一本是副本,笔记是残缺的)

完整版和副本什么区别捏?

因为当初我在完整版内写的笔记都是草写的,虽然完整但是字有点丑。

所以想到了再拿一个笔记本认真的将完整版内的笔记重新记录一遍,但是后来因为忙的原因就没有继续记录了。

直到想起来打算继续写的时候,发现完整版已经不见了,感觉非常可惜!

现在打算将部分内容以这种形式敲出来,算是给自己重新巩固巩固吧,同时说不定也能帮助到有需要的兄台(有错误地方望指出)。

面向对象编程 -- OOP(Object Oriented Programming)

1.抽象方法

  1. 没有方法体的方法,必须要用 abstract 修饰;

  2. 不能是 private , 不能是 static 的;

  3. 必须以分号结尾;

2.接口定义与实现

2.1.接口定义格式

interface 接口名 [extends 父接口名] {
	[常量]
	[抽象方法]
}

2.2.特性

  1. 接口里面只能有常量和抽象方法;

  2. 接口与接口之间是继承关系;

  3. 借口在类之间实现是用 implements ,并且可以多实现(用逗号分开);

  4. 类在继承其它类的同时还可以实现接口(多实现);

2.3.与抽象类的区别

  1. 如果只是单纯的定义规范,两种都可以使用;

  2. 如果在定义规范的时候还想共享一些方法,那只能用 abstract 抽象类;

3.异常类

3.1.错误类型

  1. 语法错误,最严重的错误,一行代码都不执行(最好排错);

  2. 运行时错误,永远不要相信你的用户,只能依靠数据验证;

  3. 逻辑错误,死循环;

3.2.错误级别

  1. notice,提示级别,通常可以无视它;

  2. warning,警告级别;

  3. error,错误级别,后续代码都不执行;

3.3.开启错误显示

  1. php.ini:
display_errors = on;
  1. 临时修改配置文件,只对当前脚本有效:

php文件内输入。ini_set('display_errors','on');

  1. 通过函数来配置错误显示级别,只对当前脚本有效:

error_reporting(E_ALL & ~E_NOTICE);除了notice的所有错误;

  1. 用户自定义错误

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预处理

  1. 准备一个DSN:

$dsn = 'mysql:host=主机名;dbname=库名;charset=编码';

  1. 得到pdo对象:

$pod = new PDO($dsn,'数据库用户名','数据库密码');

  1. 设置错误模式:

$pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_WARNING); $stmt = $PDO->query($sql);//发送 sql 语句

4.1.预处理流程

前提设置与上方一致;

  1. 准备一个sql语句模版:

$sql = "insert into 表名(username,password) values(?,?)";

  1. 发送sql语句模版,得到预处理对象:
$stmt = $pdo->prepare($sql);
  1. 绑定参数

第一种: $stmt->bindParam(1,变量); $stmt->bindParam(2,变量); //注意:此种方法第一个参数是指从左到右的问号从第几个开始,这里为第一个开始,第二个参数的值必须为变量 第二种: $stme->bindValue(1,变量或者值); $stme->bindValue(2,变量或者值);

  1. 确定执行:
$stmt->execute();

第二种

  1. 准备一个sql语句模版:

$sql = "insert into 表名(username,password) values(?,?)";

  1. 发送sql语句模版,得到预处理对象:
$stmt = $pdo->prepare($sql);
  1. 接收参数

$username = '接收的参数值'; $password = '接收的参数值'; $data = array($username,$passowrd); 注意:这里的数组只能是下标从0开的一维数组;

  1. 确定执行的同时传入一个数组:
$stmt->execute($data);

PHP的基本上就在这篇结束了。因为笔记残缺以及我是跳着来写的。所以可能有些兄台想看的并没有在上面。大家可以在网上搜搜自己想要的内容的;

相关资料

[回忆曾经]PHP入门基础学习笔记: http://www.bugsafe.cn/archives/159.html

[回忆曾经]PHP面向对象基础学习笔记(一): http://www.bugsafe.cn/archives/160.html


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

这才是马云

这才是马云

陈伟 / 浙江人民出版社 / 2011-5 / 30.00元

“幽默马云”、“开心马云”、“顽皮马云”、“狂妄马云”等。《这才是马云》从各个角度揭开了千面马云的真面目,告诉你一个与想象中大不一样的马云。这不只是一本书,更像一部喜剧电影,让你通过声音、色彩、表情等诸多要素走近马云,感受阿里巴巴。没有冗长的说教,只有让人忍俊不禁的细节;没有高深的理论,只有通俗、诚恳的陈述。作者借幽默平常的琐事,记录下马云“可爱”的一面,看完后让人恍然大悟:原来,马云是这样一个人......一起来看看 《这才是马云》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具