php学习之function的用法

 更新时间:2012年07月14日 10:26:39   作者:  
用户自定义函数也称自定义函数,它们不是PHP提供的,是由程序员创建的.由于自己创建了这样的函数,所以就可以完全控制这些函数.因此可以让一个函数完全按照自己希望的方式运行
1,申明函数
在PHP中,定义函数的方法同其他编程语言几乎一样.下面是PHP申明函数的语法结构:
复制代码 代码如下:

Function function_name($argument1,$argument2,$argument3,......$argumentn)
{
//函数代码code
Return 返回值;
}

以上语法结构中,关键字的含义如下.
(1)function:用于申明用户自定义函数的关键字.
(2)function_name:要创建的函数名称.该名称将在以后被调用时使用.函数名应该唯一,因为PHP不支持重载.在命名函数的时候,需要遵循和变量命名
相同的原则.但是函数名不能以$开头,而变量可以.
(3)argument:要传递给函数的值.函数可以有多个参数,它们之间用逗号.但是参数项是可选的,可以在调用函数的时候不传递任何参数.
(4)code:是在函数被调用的时候执行的一段代码.如果有两条或者多条语句,则代码必须用大括号"{}"括起来.但是,如果只有一条代码,则不需要大括号.
(5)Return:将调用的代码需要的值返回.任何类型都可以返回,包括列表和对象.这导致函数立即结束它的运行,并且将控制权传递回它被调用的行.
2,无参数函数
代码func_1.php
复制代码 代码如下:

<?php
require 'a.php';
echo "我不会被执行!";
?>

3,有参数函数
PHP支持按值传递参数(默认),通过引用传递和默认参数值.可变长度参数列表仅在PHP4和后继版本中被支持.
(1)值传递参数.按值进行参数传递是PHP的默认传递方式.使用这个方法,必须在主程序调用时传递一个值(参数).
代码sum.php
复制代码 代码如下:

<?php
function sum ($a,$b)
{
Echo $a+$b;
}
sum(100,20); //开始调用该函数
?>

(2)引用参数.在按照值传递的时候,只有参数的副本传递给被调用的函数.但是在被调用函数内部对这些值的任何修改,都不会影响调用函数
中的原始值.引用传递其实也就是地址传递,将一个变量的地址作为参数传递.
代码valuechange.php
复制代码 代码如下:

<?php
$myNum=100;
function Valuechange ($number)
{
$number=$number+1;
Echo $number . "<br>";
}
Valuechange($myNum);
Echo $myNum;
?>

(3)默认值参数.使用默认的参数值传递方法,函数必须在调用的时候有一个参数.如果没有使用的值,就把默认值传递给函数参数.默认值必须是常量表达式,不是变量,
类成员或者函数调用.
提示:当使用默认参数时,任何默认参数必须放在非默认参数的右侧;否则,可能函数不会按照预期的情况工作.
代码func_default.php
复制代码 代码如下:

<?php
$myNum=100;
function Valuechange ($number)
{
$number=$number+1;
Echo $number . "<br>";
}
Valuechange($myNum);
Echo $myNum;
?>

相关文章

  • PHP实现搜索时记住状态的方法示例

    PHP实现搜索时记住状态的方法示例

    这篇文章主要介绍了PHP实现搜索时记住状态的方法,结合实例形式分析了php通过get参数传递及DOM元素形式记录搜索状态的相关操作技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2018-05-05
  • 使用phpword生成word文档的两种方式

    使用phpword生成word文档的两种方式

    这篇文章主要介绍了使用phpword生成word文档的两种方式,直接使用代码编写word文档和读取原有word模板,替换相关变量这两种方法,并通过代码示例给大家讲解的非常详细,需要的朋友可以参考下
    2024-03-03
  • PHP设计模式之装饰器模式定义与用法简单示例

    PHP设计模式之装饰器模式定义与用法简单示例

    这篇文章主要介绍了PHP设计模式之装饰器模式定义与用法,结合简单实例形式分析了php装饰器模式的概念、原理、定义与简单使用方法,需要的朋友可以参考下
    2018-08-08
  • phpwind中的数据库操作类

    phpwind中的数据库操作类

    phpwind中的数据库操作类...
    2007-01-01
  • PHP直接修改表内容DataGrid功能实现代码

    PHP直接修改表内容DataGrid功能实现代码

    最近想做一个通过PHP实现DataGrid功能的东西,这样可以直接修改数据库中表的内容,而不用开发【新增数据页面】和【编辑页面】,本篇首先介绍基于MySQL的使用方法,再简单介绍对于Oracle连接(基于sqlrelay)的二次开发。
    2015-09-09
  • 两个强悍的php 图像处理类1

    两个强悍的php 图像处理类1

    基本图片处理,用于完成图片缩入,水印添加,当水印图超过目标图片尺寸时,水印图能自动适应目标图片而缩小,水印图可以设置跟背景的合并度
    2009-06-06
  • dedecms模板标签代码官方参考

    dedecms模板标签代码官方参考

    dedecms模板标签代码官方参考...
    2007-03-03
  • PHP实现基数排序的方法详解

    PHP实现基数排序的方法详解

    这篇文章主要介绍了PHP实现基数排序的方法,结合实例形式分析了基数排序的原理、实现方法与相关操作技巧,需要的朋友可以参考下
    2017-12-12
  • PHP获取网络图片信息的方法步骤详解

    PHP获取网络图片信息的方法步骤详解

    在开发Web应用程序中,我们经常需要从网络上获取图片并对其进行处理,有时候,我们可能需要知道图片的长宽和类型信息,以便进行进一步的操作或展示给用户,所以本文就大家介绍PHP获取网络上图片信息的方法步骤,感兴趣的同学跟着小编一起来看看吧
    2023-08-08
  • php验证session无效的解决方法

    php验证session无效的解决方法

    这篇文章主要介绍了php验证session无效的解决方法,涉及对session缓存目录的判断与修改,是进行session操作经常会遇到的问题,需要的朋友可以参考下
    2014-11-11

最新评论