PHP函数可分为:用户自定义函数和内部(内置)函数。
一、自定义函数
1、创建用户自定义函数的基本用法,如:
function funExample($name){
echo "say hello to ".$name;
return;
}
funExample("sky");
echo "<br />";
2、函数的其他定义方式。PHP函数不仅可以在脚本中定义,也可以在流程控制语句,甚至函数里定义。如:
//(1)在脚本中定义一个无参的函数
function onvar(){
echo "无参函数<br />";
}
//(2)在脚本中定义一个带有返回值的函数
function returnValue(){
return true;
}
//(3)在流程控制语句中定义函数
if(returnValue()){
function inFunction(){
echo "根据条件定义的函数<br />";
}
}
if(function_exists("inFunction")){
inFunction();
}
//(4)在函数中定义函数
function base(){
function offset(){
echo "在函数内部定义的函数<br />";
}
//在函数中定义一个类
class subClass{
//在类里定义一个函数
function subShow(){
echo "在函数内部定义的类里的函数<br />";
}
}
}
//先调用外部函数
base();
//再调用内部函数
if(function_exists(offset)){
offset();
}
if(class_exists(subClass)){
//函数运行后,初始化subClass()
$subClass = new subClass();
//调用类里的函数
$subClass->subshow();
}
注意:调用的先后顺序
3、递归函数:调用本身的函数。如:
function jieCheng($n){
if($n==1){
return 1;
}else{
return $n*jieCheng($n-1);
}
}
echo "5的阶乘为:".jieCheng(5)."<br />";
应用:使用递归函数实现无限分级菜单(待整理)
4、PHP函数的参数。PHP有参的函数和ActionScript的用法相似,可以给参数设置默认值。如:
function haveArg($arg1=10,$arg2=array("a","b","c","d")){
echo "参数一:".$arg1."<br />";
echo "参数二:数组:";
$arg2 = array_values($arg2);
foreach($arg2 as $key=>$value){
if($key!=(count($arg2)-1)){
echo "$value,";
}else{
echo "$value";
}
}
echo "<br />";
}
//使用默认的参数
haveArg();
//新参数
haveArg("新的参数",array("x"=>1,3,4,5,9));
5、变量函数。在变量后加上括号就变成了变量函数。使用方法,如:
$varFun = "showMsg";
function showMsg(){
echo "show my mssage<br />";
}
if(function_exists($varFun)){
$varFun();
}