一.函数(Function)
 1.什么是函数:封装的,可以重复使用的
                       完成特定功能的代码段.
 2.分类
  (1)系统函数
  (2)自定义函数
 3.自定义函数
  (1)格式
  function 函数名称([参数[,参数=值[,...]]]){
    ...
    [return 值]
  }
  (2)调用函数
   [$变量] = 函数名称(参数[,参数[,...]]);
 
  (3)原理:函数不调用不执行,定义函数时,会将
        函数放到内存中代码段,当调用函数时去内存
       中函数名称所在位置中执行函数体,执行完后
      将控制权移交回给调用函数的位置
  (4)函数名称规范
    说明:
    a.变量,数组名,函数名称,类名,方法名
          常量, 文件夹 ,文件,图像,路径等
   
    b.函数名称不区分大小写   
    c.尽量以动词开头 例如: getInfo,setInfo
       isInfo inInfo等.
   (5) 参数
      a. 参数:程序员跟函数沟通的媒介
      b. 参数个数至少0个(0,1,多个)
      c. 参数可以是任意数据类型
      d. 没值的参数叫必选参数,而有值的参数
               叫可选参数,必选参数一定在可选参数
               前面
    (6) 返回值
      a.返回值:函数执行的结果
      b.返回值的个数只能有 0个或1个
      c.返回值可以是任意数据类型
      d.返回值和参数没有必然联系
      e. 作用结束函数执行的功能,
               并且将控制权返回给调用
               函数的位置上
               
   4. 变量的作用域
      (1)局部变量:变量在代码段(函数)中有效
         a.动态局部变量
         b.静态局部变量 static:用在函数中,当调用函数时
                             不释放内存,一般实现计数
      (2)全局变量:变量在任意范围中都有效
                              在代码段(函数)中必须声明
         a.global
         b.$GLOBALS
      (3)超全局变量:变量在任意范围中都有效,
                                  并且不用声明
            说明:所有的预定义变量都是超全局变量
                                     
    5.预定义变量
      (1) $_POST:表单 post 传输方式,以名/值对接受数据
      (2) $_GET :表单 get 传输方式,以名/值对接受数据
      (3) $GLOBALS:全局变量
      (4) $_FILES:接受 上传文件的信息
      (5) $_SESSION:会话机制,变量的跨页面传输
      (6) $_COOKIE:会话机制
      (7) $_REQUEST:等同于 $_POST,$_GET,$_COOKIE接受
      (8) $_SERVER: 服务器的参数信息
      (9) $_ENV: 环境变量
          说明:
         a.预定义变量都是以数组形式存储的
                  例如:
             (a)$user= $_POST['user'];
                      接受表单中的一个元素
             (b)print_r($_POST) 表单的所有元素         
         b. 所有的预定义变量都是超全局变量             
     
     6. 函数函数库   arguments 参数
       (1) func_num_args:获得函数的参数个数
       (2) func_get_args:获得所有参数值组成的数组
       (3) func_get_arg:获得所有参数值组成的数组中某一个参数值
       (4) function_exists:判断函数名称是否存在                   
                      
     7.变量函数
           原理:将函数名称赋值给变量,那使用变量时带小括号
           PHP引擎能正常解析函数
     
     8.递归
    (1)原理:当调用函数A时,而你函数A又调
                   用函数B,并且A和B是同一个函数
                   也就是说 函数自身调用

PHP函数笔记的更多相关文章

  1. MySQL函数笔记

    MySQL函数笔记 日期函数 SELECT t1.xcjyrq, t1.* FROM view_sbxx t1 WHERE t1.syzt ; SELECT t1.xcjyrq, t1.* FROM ...

  2. JavaScript基础——JavaScript函数(笔记)

    avaScript 函数(笔记) JavaScript 是函数式编程语言,在JavaScript脚本中可以随处看到函数,函数构成了JavaScript源代码的主体. 一.定义函数 定义函数的方法有两种 ...

  3. STL之vector常用函数笔记

    STL之vector常用函数笔记 学会一些常用的vector就足够去刷acm的题了 ps:for(auto x:b) cout<<x<<" ";是基于范围的 ...

  4. numpy函数笔记(持续更新)

    numpy函数笔记 np.isin用法 np.isin(a,b) 用于判定a中的元素在b中是否出现过,如果出现过返回True,否则返回False,最终结果为一个形状和a一模一样的数组.(注意:这里的a ...

  5. Javascript进阶篇——(函数)笔记整理

    这节是根据慕课网和JavaScript DOM编程艺术一书加起来做的笔记 什么是函数如果需要多次使用同一段代码,可以把它们封装成一个函数.函数(function)就是一组允许在你的代码里随时调用的语句 ...

  6. 学习Python函数笔记之二

    ---恢复内容开始--- 1.内置函数:取绝对值函数abs() 2.内置函数:取最大值max(),取最小值min() 3.内置函数:len()是获取序列的长度 4.内置函数:divmod(x,y),返 ...

  7. 学习python函数笔记之一

    1.函数文档字符串,用于存放函数的说明,一般写在第一行 2.函数调用:函数名+参数列表(函数的参数分实际参数和形式参数,str就是形式参数,则'welcome 头 python'就是实际参数) 参数需 ...

  8. Oracle常用函数笔记

    一.字符函数 1.dual 临时表 oracle中的临时变量表,此表只返回第一行第一列 例如:select sysdate from dual 输出:2014-6-9 11:20:39 2.Initc ...

  9. C++ 内联函数笔记

    要使用内联函数,必须采取下述措施之一: +在函数声明前加上关键字inline: +在函数定义前加上关键字inline. 通常的做法是省略原型,将整个定义(即函数头和所有函数代码)放在本应提供原型的地方 ...

  10. Python常用函数笔记

    1.lambda lambda其实就是一条语句,lambda(x):body.x是lambda函数的参数,参数可以有任意多个(包括可选参数);body是函数体,只能是一个表达式,并且直接返回该表达式的 ...

随机推荐

  1. python 采坑总结 调用键盘事件后导致键盘失灵的可能原因

    在练习python封装键盘事件的时候,实现一个keyDown和keyUp的功能: @staticmethod    def keyDown(keyName):        #按下按键        ...

  2. linux基础命令---whereis

    whereis 查找命令的位置,包括执行文件.源代码.手册文件. 此命令的适用范围:RedHat.RHEL.Ubuntu.CentOS.SUSE.openSUSE.Fedora. 1.语法       ...

  3. C/C++之单例模式实现

    /*** * 保证一个类仅有一个实例,并提供一个访问它的全局访问点 */ #include <iostream> #include <string> using namespa ...

  4. linux环境下安装jdk1.6

    卸载rpm版的jdk: #rpm -qa|grep jdk 显示:jdk1.6.0_29-fcs 卸载:#rpm -e --nodeps jdk1.6.0_29-fcs 1.从sun公司网站www.s ...

  5. bzoj3505 / P3166 [CQOI2014]数三角形

    P3166 [CQOI2014]数三角形 前置知识:某两个点$(x_{1},,y_{1}),(x_{2},y_{2})\quad (x_{1}<x_{2},y_{1}<y_{2})$所连成 ...

  6. C++面向对象高级开发课程(第一周)

    0. 内存分区 计算机中的内存在用于编程时,被人为的进行了分区(Segment),分为: -“栈区”(Stack) -“堆区”(Heap) -全局区(静态 区,Static) -文字常量区和程序代码区 ...

  7. 20145335郝昊《网络攻防》Exp4 Adobe阅读器漏洞攻击

    20145335郝昊<网络攻防>Exp4 Adobe阅读器漏洞攻击 实验内容 初步掌握平台matesploit的使用 有了初步完成渗透操作的思路 本次攻击对象为:windows xp sp ...

  8. UVa 714 Copying Books - 二分答案

    求使最大值最小,可以想到二分答案. 然后再根据题目意思乱搞一下,按要求输出斜杠(这道题觉得就这一个地方难). Code /** * UVa * Problem#12627 * Accepted * T ...

  9. win32 自定义右键菜单

    /**************************************************************************** 几大主要问题: 1.通过处理WM_MOUSE ...

  10. FTP-IIS Web

    快速搭建一个本地的FTP服务器   如果需要开发FTP文件上传下载功能,那么需要在本机上搭建一个本地FTP服务器,方便调试. 第一步:配置IIS Web服务器 1.1 控制面板中找到“程序”并打开 1 ...