php学习之function的用法


Posted in PHP onJuly 14, 2012

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 相关文章推荐
用文本文件制作留言板提示(下)
Oct 09 PHP
php笔记之常用文件操作
Oct 12 PHP
解析PHP中intval()等int转换时的意外异常情况
Jun 21 PHP
smarty获得当前url的方法分享
Feb 14 PHP
php实现aes加密类分享
Feb 16 PHP
PHP+Mysql+jQuery查询和列表框选择操作实例讲解
Oct 22 PHP
PHP常用技巧汇总
Mar 04 PHP
PHP中include和require的区别实例分析
May 07 PHP
php获取数据库中数据的实现方法
Jun 01 PHP
详解PHP素材图片上传、下载功能
Apr 12 PHP
thinkPHP5框架接口写法简单示例
Aug 05 PHP
smarty模板的使用方法实例分析
Sep 18 PHP
php 操作调试的方法
Jul 12 #PHP
php输出xml格式字符串(用的这个)
Jul 12 #PHP
php长字符串定义方法
Jul 12 #PHP
PHP数据库调用类调用实例(详细注释)
Jul 12 #PHP
PHP中extract()函数的妙用分析
Jul 11 #PHP
Zend Framework中的简单工厂模式 图文
Jul 10 #PHP
工厂模式在Zend Framework中应用介绍
Jul 10 #PHP
You might like
PHP isset()与empty()的使用区别详解
2010/08/29 PHP
PHP中date()日期函数有关参数整理
2011/07/19 PHP
完美解决PHP中的Cannot modify header information 问题
2013/08/12 PHP
PHP变量的定义、可变变量、变量引用、销毁方法
2013/12/20 PHP
PHP实现数据分页显示的简单实例
2016/05/26 PHP
php基于单例模式封装mysql类完整实例
2016/10/18 PHP
ThinkPHP实现简单登陆功能
2017/04/28 PHP
详解PHP函数 strip_tags 处理字符串缺陷bug
2017/06/11 PHP
PHP实现图的邻接矩阵表示及几种简单遍历算法分析
2017/11/24 PHP
PHP实时统计中文字数和区别
2019/02/28 PHP
php设计模式之备忘模式分析【星际争霸游戏案例】
2020/03/24 PHP
javascript 装载iframe子页面,自适应高度
2009/03/20 Javascript
JavaScript mapreduce工作原理简析
2012/11/25 Javascript
javascript和HTML5利用canvas构建猜牌游戏实现算法
2013/07/17 Javascript
兼容主流浏览器的jQuery+CSS 实现遮罩层的简单代码
2014/10/14 Javascript
简单谈谈Javascript中类型的判断
2015/10/19 Javascript
GitHub上一些实用的JavaScript的文件压缩解压缩库推荐
2016/03/13 Javascript
彻底理解js面向对象之继承
2018/02/04 Javascript
nodejs更新package.json中的dependencies依赖到最新版本的方法
2018/10/10 NodeJs
Vue动画事件详解及过渡动画实例
2019/02/09 Javascript
Node.js + express基本用法教程
2019/03/14 Javascript
原生js实现贪食蛇小游戏的思路详解
2019/11/26 Javascript
Postman内建变量常用方法实例解析
2020/07/28 Javascript
简单介绍Python中的floor()方法
2015/05/15 Python
Python的Django框架中URLconf相关的一些技巧整理
2015/07/18 Python
Python上传package到Pypi(代码简单)
2016/02/06 Python
Python基于Pymssql模块实现连接SQL Server数据库的方法详解
2017/07/20 Python
Python统计时间内的并发数代码实例
2019/12/28 Python
利用jupyter网页版本进行python函数查询方式
2020/04/14 Python
美国转售二手商品的电子商务平台:BLINQ
2018/12/13 全球购物
财务会计人员岗位职责
2013/11/30 职场文书
初中军训感想300字
2014/03/05 职场文书
公司采购主管岗位职责
2014/06/17 职场文书
海弦WR-800F
2022/04/05 无线电
vue中控制mock在开发环境使用,在生产环境禁用方式
2022/04/06 Vue.js
Python的property属性详细讲解
2022/04/11 Python