代码重用与函数编写

1.使用require()和include()函数

这两个函数的作用是将一个文件爱你载入到PHP脚本中,这样就可以直接调用这个文件中的方法。
require()和include()几乎是一样的,唯一的区别就是函数失败后前者给出一个致命错误,后者给出一个警告
变体:require_once()和include_once()确保一个包含的文件只能被引入一次,多用这个

2.在PHP中使用函数

2.1调用函数

如果一个函数已经被定义了,且该函数在这个脚本里面,则可以直接调用,类似调用函数$fp = fopen($name, $openmode);,这个是将调用函数返回的结果赋值给一个变量,当然也可以不赋值给变量,直接使用。但是如果这个函数不在这个脚本里面又想使用的话,可以使用require()函数将函数所在的那个脚本包含进来,就可以像上面那样直接调用了。

2.2调用未定义的函数

调用为定义的函数会报错,这个时候要检查两件事情:
1.检查函数名称的拼写是不是正确,PHP的标识符是区分大小写的,但是函数名称是不区分的。
2.检查这个函数是否存在与所用的PHP版本中

3.参数的引用传递和值传递

3.1值传递

PHP接收参数有两种方式,一个是值传递,即把变量的值直接传到函数中,但是这种传递是将变量的值复制一个传给函数,所以有一个问题是当这个函数的内部操作并不会改变这个变量的值,有时候也被称为是局部变量的问题,如果想要解决这个问题,需要在函数中声明这是一个全局变量。
看一个例子:

 function increment($value, $amout = 1){
$value = $value + $amount;
} $value = 10;
increment($value);
echo $value; //

3.2引用传递

引用传递可以解决上面的问题,思路是:在传递的时候不要传递这个参数的复制版,而是传递这个变量对数值的引用,解释一下是当一个数值被赋值给一个变量时,这个变量保存着这个数值的地址。这样我们就可以在变量前面加一个&来确定,我们要接收的是这个变量保存的数值对应的地址,这样,我们再操作的时候就是直接操作这个变量对应的数值了。
看个例子:

function increment(&$value, $amout = 1){
$value = $value + $amount;
} $value = 10;
increment($value);
echo $value; //

4.使用Return关键字

关键字return将终止函数的执行,在函数中,如果碰到return,那么函数将执行完这个return之后就不再继续执行return下面的命令。

PHP代码重用与函数编写的更多相关文章

  1. 从零开始攻略PHP(6)——代码重用与函数编写的一些注意事项

    一个新的项目是这样创建的:它将已有的可重新利用的组件进行组合,并将新的开发难度降低到最小. 代码重用的好处:降低成本.提升可靠性和一致性. 1.使用require()和include()函数 使用一条 ...

  2. PHP学习(6)——代码重用与函数编写的一些注意事项

    一个新的项目是这样创建的:它将已有的可重新利用的组件进行组合,并将新的开发难度降低到最小. 代码重用的好处:降低成本.提升可靠性和一致性. 1.使用require()和include()函数 使用一条 ...

  3. Day4_代码重用与函数

    知识点速记: 重用代码的方法:脚本包含require().include(); 全局配置文件php.ini(auto_prepend_file/auto_append_file); 目录配置文件.ht ...

  4. 《C++ Primer Plus》读书笔记之十二—C++中的代码重用

    第14章 C++中的代码重用 1.C++代码重用方法:公有继承.使用本身是另一个类的对象的类成员(这种方法称为包含.组合或层次化).私有或保护继承.类模板等. 2.模板特性意味着声明对象时,必须指定具 ...

  5. “前.NET Core时代”如何实现跨平台代码重用 ——程序集重用

    除了在源代码层面实现共享("前.NET Core时代"如何实现跨平台代码重用 --源文件重用)之外,我们还可以跨平台共享同一个程序集,这种独立于具体平台的"中性" ...

  6. 谈谈Delphi中的类和对象4---类是一种对数据和操作高度的封装机制 && 类是一种代码重用机制

    五.类是一种对数据和操作高度的封装机制 1)数据封装 unit Unit2; interface type TEmployee = class; private FName: String; publ ...

  7. 52. 模版和设计元素——Lotus Notes的代码重用

    不论是理论上还是实用上,代码重用都是编程的一个重要议题.可以从两个角度来讨论代码重用. 一是逻辑上代码以怎样的方式被重用.既可以通过面向对象的思想普及以来耳熟能详的继承的方式.比如先建了一个车的基类, ...

  8. html css <input> javaScript .数据类型 JS中的函数编写方式 BOM总结 DOM总结

    Day27  html css div 块标签. 特点: 独占一行,有高度和宽度 span 行元素. 特点:在同一行显示,当前行满了自动去下一行显示. 不识别高度和宽度 1.1.1.1 2.输入域标签 ...

  9. Java 代码重用:操作与上下文重用

    目录 操作重用 参数化操作 上下文重用 上下文作为模板方法 结束语 我几乎不需要讨论为什么重用代码是有利的.代码重用(通常)会导致更快的开发与更少的 BUG.一旦一段代码被封装和重用,那么检查程序是否 ...

随机推荐

  1. java.net.SocketException: Software caused connection abort: socket write error

    用Java客户端程序访问Java Web服务器时出错: java.net.SocketException: Software caused connection abort: socket write ...

  2. 定制自己的mybatis生成

    MyBatis Generator原生提供的生成方式targetRuntime有几种,但都不符合项目需求或想自定义自己的方法. 网上的文章也很多: 如:http://generator.sturgeo ...

  3. 对,这是http处理层

    16年2月的一次代码重构,面对如此肮脏丑陋的代码我困在了座椅上整整一天的时间. 底层用java写的api接口,通过http去调用,在之上是用php写的业务逻辑层,重构的代码,正是php这一层. pub ...

  4. JMeter专题系列(三)元件的作用域与执行顺序

    1.元件的作用域 JMeter中共有8类可被执行的元件(测试计划与线程组不属于元件),这些元件中,取样器是典型的不与其它元件发生交互作用的元件,逻辑控制器只对其子节点的取样器有效,而其它元件(conf ...

  5. entityframework学习笔记--005-给code first一个正确的解释

    在微软官方关于ef7的介绍中强调,ef7将舍弃database first.model first,只保留code first的使用.这引起了很多人的担忧,担忧源自对code first的错误理解.因 ...

  6. 实用SQL语句大全

    一.基础 1.说明:创建数据库 CREATE DATABASE database-name 2.说明:删除数据库 drop database dbname 3.说明:备份sql server --- ...

  7. 推荐设计网站 站酷(ZCOOL)设计师互动平台

    推荐网址 http://www.zcool.com.cn/

  8. js中的位运算

    按位运算符是把操作数看作一系列单独的位,而不是一个数字值.所以在这之前,不得不提到什么是"位": 数值或字符在内存内都是被存储为0和 1的序列,每个0和1被称之为1个位,比如说10 ...

  9. sql 小操作

    1.COALESCE(oe.promotion_value, 0) 设置默认值 2.group_concat(pspk.name) 合并字段

  10. php每天一题:strlen()与mb_strlen()的作用分别是什么

    strlen()与mb_strlen()都是用于获取字符串长度的,那么它们两个有什么不同? strlen()与mb_strlen()的不同之处在于mb_strlen()第二个参数可以用于指定字符编码. ...