原文:PHP 11:函数

本文章介绍PHP的函数。
如何学习呢?可以从以下几个方面考虑

  1. 函数是如何定义的?区分大小写吗?
  2. 函数的参数是如何定义的?
  3. 函数是否支持重载?
  4. 函数的返回值是如何定义的。
  5. 函数有变量函数吗?

如果把上面的问题搞清楚了,相信函数你也就掌握了。还是一个个看吧。

  1.  函数是如何定义的?区分大小写吗?

首先函数对大小写不敏感。但是还是建议你采用和函数声明时的一样。
        函数是如何定义的呢?语法可以为:

<?php
function func($arg_1, $arg_2, , $arg_n)
{
   echo "Example function.\n";
   return $retval;
}
?> 

其实和其他语言差不多。不过函数声明里不需要显式的说明返回类型。和JavaScript差不多。
  那么是不是和C语言一样,函数先定义后使用呢?这个问题非常好。在PHP3中,确实需要这样,但是后期版本则没有限制了。
  由于PHP存在函数种的函数或条件函数,所以这2种情况下需要先定义后使用,要是没有定义函数你却使用了,系统会出问题的。函数中的函数倒是和Python有些类似。
 条件函数的例子可以是:

         ?>

输出结果为:


Call function helloWorld():Hello,world

函数中的函数可以是:

             ?> 

输出结果是:

I don't exist until func() is called. I have alrady made


2. 函数的参数是如何定义的?

    和通常使用的函数参数一样,参数列表用逗号分隔。那么参数是按值传递还是按引用传递呢?答案是值传递。如何按引用传递呢?其实和C++里一样,在参数前使用&符号。
   那么如何设置缺省的参数值呢?这个和C++一样,在参数列表里直接写上就行了。例如:

<?php
function MakeComputerBrand($brand = "IBM")
{
   return "Making ".$brand." computer now.<br>";
}
echo MakeComputerBrand();
echo MakeComputerBrand("DELL");
echo MakeComputerBrand("HP");
echo MakeComputerBrand("Lenevo");
?> 

输出的结果是:

Making IBM computer now.
Making DELL computer now.
Making HP computer now.
Making Lenevo computer now.


3. 函数是否支持重载?

   不支持。

4 .函数的返回值是如何定义的

   如果单独返回一个值或不返回值,和普通语言一样,return就可以。但是若返回多个值,一种方法是返回一个数组。例如:

);
}
list ($zero, $one, $two) = small_numbers();
?> 


5. 函数有变量函数吗?


  有,和可变变量一样。

PHP 11:函数的更多相关文章

  1. c++11 函数模板的默认模板参数

    c++11 函数模板的默认模板参数 #define _CRT_SECURE_NO_WARNINGS #include <iostream> #include <string> ...

  2. Day 11 函数名,闭包,装饰器. +作业

    '''一.函数名.def func(): print(5555)print(func)#输出结果 <function func at 0x026B5E88> 打印函数地址. # 1. 函数 ...

  3. python 基础篇 11 函数进阶----装饰器

    11. 前⽅⾼能-装饰器初识本节主要内容:1. 函数名的运⽤, 第⼀类对象2. 闭包3. 装饰器初识 一:函数名的运用: 函数名是一个变量,但他是一个特殊变量,加上括号可以执行函数. ⼆. 闭包什么是 ...

  4. python基础11 ---函数模块1

    函数模块 一.函数模块的作用(为什么要有函数模块) 1.函数模块可以减少代码量 2.函数模块方便阅读 3.函数模块维护性强二.函数模块的本质以及调用方法 1.函数模块的本质就是一个.py结尾的文件,该 ...

  5. python学习11函数

    '''''''''函数:1.定义:指通过专门的代码组织,用来实现特定的功能的代码段,具有相对独立性,可供其他代码重复调用2.语法:def 函数名([参数]): 函数体[return 返回值]3.函数名 ...

  6. NS 802.11函数分析(一)

    recv函数有两个作用,不仅是接收其他节点发送的包,而且当节点接收到其他包的时候也会调用recv() 首先给出NS2中recv的源码,和一些注释: void Mac802_11::recv(Packe ...

  7. Python学习笔记11—函数

    建立第一个函数 /usr/bin/env Python #coding:utf-8 def add_function(a,b): c = a+b print c if __name__==" ...

  8. day 9~11 函数

    今日内容 '''函数四个组成部分函数名:保存的是函数的地址,是调用函数的依据函数体:就是执行特定功能的代码块函数返回值:代码块执行的结果反馈函数参数:完成功能需要的条件信息​1.函数的概念2.函数的定 ...

  9. python3学习笔记11(函数)

    函数 python提供了许多内建函数,例如print(). 自己创建的函数,叫做用户自定义函数. 定义一个由自己想要功能的函数,以下是简单的规则: 函数代码块以 def 关键词开头,后接函数标识符名称 ...

  10. python note 11 函数名的使用、闭包、迭代器

    1.函数名就是一个变量 def func(): print("我是一个小小的函数") a = func print(a) #输出变量存放地址 <function func a ...

随机推荐

  1. React.js入门笔记 创建hello world 的6种方式

    一.ReactJS简介 React 起源于 Facebook 的内部项目,因为该公司对市场上所有 JavaScript MVC 框架,都不满意,就决定自己写一套,用来架设 Instagram 的网站. ...

  2. Net 项目构建基于Jenkins + Github + Mono 的持续集成环境

    Net 项目构建基于Jenkins + Github + Mono 的持续集成环境 阅读目录 1 安装 2 配置 3 测试 在Redhat enterprise 6.5 的服务器上,为在gutub 上 ...

  3. tomcat配置sqlserver数据库

    1. 首先确保Tomcat安装文件夹中的\common\lib(对于Tomcat5.5)或者是\lib(Tomcat6.0)文件夹中已包括JDBC连接数据库所必须的三个.jar文件(msbase.ja ...

  4. 《C++ Primer Plus》学习笔记6

    <C++ Primer Plus>学习笔记6 第11章 使用类 <<<<<<<<<<<<<<<&l ...

  5. hdu 4911 Inversion(找到的倒数)

    主题链接:http://acm.hdu.edu.cn/showproblem.php?pid=4911 Inversion Time Limit: 2000/1000 MS (Java/Others) ...

  6. 查询oracle sql运行计划,一个非常重要的观点--dba_hist_sql_plan

    该文章的作者给予了极大的帮助长老枯荣,为了表达我的谢意. 这适用于oracle db版本号oracle 10g或者更高的版本号. 之所以说这种看法是非常重要的,因为观点是有之一awrsqrpt报告没有 ...

  7. 数组排序、递归——(Java学习笔记二)

    升序:      选择排序:         选定一个元素,一次和后面的元素相比较,如果选定的元素大雨后面的比较元素,就交换位置         先出现最小值,最后出现最大值. public stat ...

  8. mysql只导出表结构或数据

    唯一的非导电结构指南数据 mysqldump -t 数据库名称 -uroot -p > xxx.sql 指南结构不仅指导数据 mysqldump    --opt -d  数据库名 -u -p ...

  9. View Component

    View Component 在之前的MVC中,我们经常需要类似一种小部件的功能,通常我们都是使用Partial View来实现,因为MVC中没有类似Web Forms中的WebControl的功能. ...

  10. AlloyRenderingEngine

    AlloyRenderingEngine燃烧的进度条 写在前面 Github: https://github.com/AlloyTeam/AlloyGameEngine HTML 5新增了progre ...