一. 函数
 1.函数:封装的,可以重复使用的完成特定功能的代码段。
 2.函数分类:
   (1)系统函数
   (2)自定义函数
 3.自定义函数
   (1)格式
   function 函数名称([参数[=值][,参数[,...]]]){
     ...
   }
   (2)函数名称命名规定
     a.函数名称以字母或下划线开头,后面包含字母,数字,下划线。
     b.函数名称禁止包含特殊符号
     c.函数名称尽量含义明确
     e.函数名称尽量采用驼峰格式
     f.函数名称尽量以动词开头
               例如: getInfo,isInfo inInfo setInfo
     g.函数名称不区分大小写
        说明: 变量,函数名称,常量,类,方法,属性,文件,文件夹图片,路径等都字符
   
   (3)函数调用
    [$变量名称=]函数名([参数[,参数[,...]]])
   
   (4)函数原理:函数不调用不执行,当定义函数时会将函数存在内存中,当调用函数时会在内存中找函数名称所在位置并执行,最后执行完函数体后将控制权移交回给调用的函数位置上
   
   (5) 参数
     a.参数:程序员跟函数沟通的媒介
     b.参数至少0个(0,1,多个...)
     c.参数可以是任意数据类型
     d.没值参数必选参数,有值的参数可选参数,必选参数一定在可选参数的前面
   
   (6) 返回值
   function 函数名称([参数[=值][,参数[,...]]]){
     ...
     [return 值]
   }
      说明:
     a. 返回值: 函数的执行结果
     b. 返回值只能有0个或1个
     c. 返回值可以是任意数据类型
     d. 返回值有结束函数执行的功能,并且将控制权移交给调用函数的位置上
     e. 返回值和参数没有必然联系
   (7) 变量函数:将函数名称(字符串)赋值给变量,而使用变量时带小括号,那PHP引擎能正常解析函数
     
   (8) 递归:调用函数A时,函数A中又调用函数B,而函数A和函数B是同一个函数(调用自身函数)

【day08】PHP的更多相关文章

  1. 面向对象【day08】:异常处理(六)

    本节内容 1.概述 2.异常梳理 3.异常梳理流程图 4.异常大全 5.自定义异常 一.概述 异常处理是当程序出错了,但是我们又不想让用户看到这个错误,而且我在写程序的时候已经预料到了它可以出现这样的 ...

  2. 面向对象【day08】:异常处理-断言(七)

    本节内容 1.概述 2.知识点回顾 3.断言 一.概述 python中断言,这个我是第一次听说到的,断言有什么用呢?断言就是做一些程序的检查工作,就是在执行之前需要做的一些检查,比如类似于安检一样,合 ...

  3. 面向对象【day08】:动态导入模块(八)

    本节内容 1.概述 2.知识回顾 3.动态导入模块 一.概述 我们之前导入模块都是用import,或者from ... import ....这种模式去导入模块,那如果我们如何实现只用字符串就可以导入 ...

  4. 面向对象【day08】:类的起源与metaclass(二)

    本节内容 1.概述 2.类的起源 3.__new__方法 4.__metaclass__方法 一.概述 前面我们学习了大篇幅的关于类,通过类创建对象,那我们想知道这个类到底是怎么产生的呢?它的一切来源 ...

  5. 面向对象【day08】:类的特殊成员(一)

    本节内容 1.__doc__2.__module__和__class__3.__init__4.__del__5 .__call__6 .__dict__7 .__str__8 .__getitem_ ...

  6. 面向对象【day08】:反射的最佳实践(三)

    本节内容 1.伪造web框架的路由系统 2.反射函数 3.扩展导入模块 4.企业最佳实践 一.伪造web框架的路由系统 commons.py #!/usr/bin/env python # -*- c ...

  7. 面向对象【day08】:问答式面相对象(四)

    本节内容 1.什么是面向对象编程 2.什么是市类?什么是对象?又有什么关系? 3.什么时候适用面向对象? 4.self就是调用当前方法的对象 5.封装.继承.多态 6.字段方法 1.什么是面向对象编程 ...

  8. 面向对象【day08】:反射(五)

    本节内容 概述 反射函数 综合使用 一.概述 反射我们以后会经常用到,这个东西实现了动态的装配,通过字符串来反射类中的属性和方法 二.反射函数 2.1 hasarttr(obj,name_str) 作 ...

  9. 面向对象【day08】:静态方法、类方法、属性方法(九)

    本节内容 概述 静态方法 类方法 属性方法 总结 一.概述 前面我们已经讲解了关于类的很多东西,今天讲讲类的另外的特性:静态方法(staticmethod).类方法(classmethod).属性方法 ...

随机推荐

  1. golang数据结构之双链表

    目录结构: doubleLink.go package link import ( "fmt" ) //HerosNode 链表节点 type HerosNode struct { ...

  2. PHP 构造函数

    在PHP5以前的版本中,构造函数的名称必须与类名相同,这种方法在PHP5中仍然可以使用,但现在已经很少有人用了.PHP5以及之后的版本,构造函数用__construct()方法来声明,这样做的好处是可 ...

  3. 不为人知的网络编程(九):理论联系实际,全方位深入理解DNS

    本文原作者:selfboot,博客地址:selfboot.cn,Github地址:github.com/selfboot,感谢原作者的技术分享. 1.引言 对于 DNS(Domain Name Sys ...

  4. jTessBoxEditor训练识别库

    1.背景 前文已经简要介绍tesseract ocr引擎的安装及基本使用,其中提到使用-l eng参数来限定语言库,可以提高识别准确率及识别效率. 本文将针对某个网站的验证码进行样本训练,形成自己的语 ...

  5. LeetCode 1:两数之和 Two Sum

    题目: 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标. 你可以假设每种输入只会对应一个答案.但是,你不能重复利用这个数组中 ...

  6. 程序员,你还不会合理选择Filter、Interceptor、Aspect?

    小伙伴们应该听说过过滤器.拦截器.切面,印象上都能够起到截断拦截的作用,在做一些业务需求时,不知道如何选择,今天老顾就来介绍一下他们之间的区别. 过滤器可以拦截到方法的请求和响应 (ServletRe ...

  7. 【zibbix自定义监控】zabbix服务自定义监控mysql的状态信息

    由于mysql我安装在zabbix_server服务的主机上,所以下面操作在zabbix服务主机上进行,注意服务主机已经安装了监控服务 实现步骤: 1.修改 zabbix_agentd.conf,添加 ...

  8. c# Winform 加载窗体

    先来一个加载窗体代码 public partial class FrmLoading : Form { public BackgroundWorker updateDBWorker=new Backg ...

  9. 关于C#异常的处理

    关于异常,从我们一开始写代码的时候就开始伴随着我们,只不过那时还没入门,脑子里并没有产生意识这就是异常.异常:程序运行期间发生错误,异常对象: 将程序发生的各种错误封装成对象曾记得第一次面试的时候,面 ...

  10. java基础(30):DBUtils、连接池

    1. DBUtils 如果只使用JDBC进行开发,我们会发现冗余代码过多,为了简化JDBC开发,本案例我们讲采用apache commons组件一个成员:DBUtils. DBUtils就是JDBC的 ...