第二十六节:使用PHP类重构代码

PHP零基础入门

重构代码:指对软件代码做任何更动以增加可读性或者简化结构而不影响输出结果。在词汇表项目中我们用于读取和编写数据文件的代码非常适合封装在类中。因此,我们将重新组织文件代码,并对我们的应用程序进行调整以使用提供程序模式。创建文件夹5.3_code_improve_with_classes文件夹,把上节课《介绍PHP类》代码复制粘贴到本节课使用。

重构代码-文件调整

第一步、修改term.class.php文件

把文件term.class.php修改为phrasesterm.class.php,类名term改为PhrasesTerm。

第二步、把term.class.php文件修改为phrasesterm.class.php

第三步、修改file_function.php文件

1、修改导入文件命

2、修改add_term()函数的类名

测试代码正常运行

重构代码-使用PHP类重构代码

第一步、把file_funtion.php的函数转为类

类是组织代码的好方法:特别是代码在某种程度上相连;类重构代码在一定程度起到保护作用:

  1. 命名忧虑:namespace;
  2. 方法都在类里面:不用担心命名导致的冲突;
  3. 需要顾虑的是类名的冲突;
  4. 类名有属性可能会引起问题。

第二步、创建filedataprovider.class.php,把file_function.php代码复制到这个文件,并修改代码:

代码解释

  1. 在函数前面添加public关键词,除了get_data和set_data函数,因为这两个函数只是在这个文件中使用;
  2. 多次使用get_terms()函数,确保get_terms()方法将引用get_data()方法,这意味着我们的方法内部必须要用$this然后get_data(),所以任何时候我们将实例数据称为实例属性或$this上的方法特定类;
  3. CONFIG[‘data_file’]改为$this->data_path:我们创建这个文件数据提供对象,我们都需要提供该路径。

第三步、决定我们要在哪里创建这个对象并使用

修改config.php文件

代码解释

  1. new FileDataProvider(APP_PATH . ‘data.json’);这是是对象,不能够使用对象作为常量;
  2. 把常量CONFIG改为一般变量;
  3. 把带有CONFIG常量修改为$config一般变量,修改functions.php代码:

第四步、修改index.php代码

代码解释

  1. 我们调用provider的方法;
  2. 必须进入我们使用函数的每个文件中的每一个对象。

第五步、修改detail.php代码

第六步、修改控制器调用到的方法

1、文件index.php

2、文件edit.php

3、文件delete.php

刷新报错:

第八步、把filedataprovider.php引入进来

还是报错,因为引入的文件先后顺序有问题:

重构代码-测试代码是否正常运行

  1. 登陆正常;
  2. 删除正常;
  3. 编辑正常;
  4. 添加正常;
  5. 登出正常。

下载本节《使用PHP类重构代码》

接近10年的互联网从业经验,精通Scrum敏捷软件开发的方法,从事互联网产品设计,开发,测试,运营,案例不少于20个,发现自己最喜欢的工作是做外贸营销,外贸SEO,特别喜欢谷歌优化。从2017年3月开始坚持在群161510483直播谷歌SEO和WEB前端开发技术,只要加进来坚持学习零基础也能够学会。

Last modified: 2019年4月25日

Previous Story

PHP零基础入门

第二十七节:mysql数据库介绍

mysql数据库介绍:MySQL在过去由于性能高,成本低,可靠性好,已经成为最流行的开源数据库,因此被广泛地应用在Internet上的中小型网站中,是最流行的关系型数据库管理系统.

...

Next Story

PHP零基础入门

第二十五节:介绍PHP类

php类:面向对象编程(OOP)是另一种代码结构类是OOP的基础,本课中向你展示PHP类的基础知识.类是变量与作用于这些变量的函数的集合.

...