您的位置 首页 php

「基础编程学习」 「PHP7数组详解」:第1章 (7)函数及异常处理


# 1.12 函数

之前在输出学生程序,用作文本渲染的时候,我们使用了check_score($score)这样的函数,用于封装功能。

大家应该有个初步的认识。函数,是一个运算过程,封装起来,多处调用。可以有效地使程序简洁起来,更富于可读性。

还是用实例让大家有个深入的了解。

1e3e2173aa1f4ff49cd7f344ffe0d56a

function关键词声明,后面是函数的标识符get_bonus_goods,然后是 形参 $type_id。函数体内部,执行需要的运算。

然后,函数可以有返回值,也可以没有。上述例子,就有返回值,$row。根据顶部注释可以看到,返回的数组。如果是空,那就是[],如果有数据,那就是array结构。

再来看一个例子。

5b19851e263a4dc78642aa1e03313ffd

Laravel 的helper函数。简单封装一下,调用reset返回数组的第一个值。因为reset名字不好记,使用head倒是直观许多。

37a894d591d84ef3907902ab48d39c51

判断是否windows平台。

大家看优秀的框架设计,有许多我们值得借鉴的地方。函数,要做最小化封装。功能尽量单一,可拆卸,灵活小巧。

尽量不要写一大堆代码,一大堆功能,严重依赖,一处用过,没有它用。那样的函数,不过是一堆代码,换个放的地方而已。

# 1.13 异常处理 try…catch…结构

程序运行中,对于出现的异常情况,应尽量捕捉,且能够有相应的处理流程,避免程序意外的发生。

ff138cc2021a4447b1a82d37080a4fd9

如上述的程序,使用catch语句捕捉三种异常情况,一个是 zeroExecption,一个是 Execption,一个是 Error。单个对象在错误发生的时候被抛出。

当然我们也可以手动抛出一个异常用于显式终端程序。

 throw new Execption('Have an error here');  

我们再看一些具体的实例。

aae543e6ace14f2eab7f9262006eaff1

b0b786d91f6b4ef2b9367dd3bcc7cca7

看上述例子,catch内捕捉到的异常,基本不做处理,而是让程序隐藏异常信息,继续往下进行。需要的地方显式 throw即可。

310453c801544653814cda3251dc6e83

上面这个例子,是需要手动处理的异常,直接处理就是。

看框架,读代码,不如动手写一写,马上去实践吧。

文章来源:智云一二三科技

文章标题:「基础编程学习」 「PHP7数组详解」:第1章 (7)函数及异常处理

文章地址:https://www.zhihuclub.com/30118.shtml

关于作者: 智云科技

热门文章

网站地图