搜尋
首頁php教程php手册php高级编程-函数-郑阿奇_php入门_脚本之家

php高级编程-函数-郑阿奇,学习php的朋友可以参考下。

1.php函数
1.用户自定义函数
代码如下:
function 函数名字([$parameter,[,…]])
{
//函数代码
}

注意:函数名不能与系统函数或用户已经定义的函数重名。
$parameter为函数参数,函数一般可以有0个或多个参数,
2.参数的传递
参数是通过值来传递的,例如前面定义func()函数是通过变量$a和$b的值传递的。通过值传递参数不会因为函数内部参数值的变化而改变函数外部的值。
代码如下:
function color(&$col) //定义函数color()
{
$col="yellow";
}
$blue="blue";
color($blue); //调用函数color(),参数使用变量$blue
echo $blue; //输出"yellow"
?>

3.函数变量的作用域
在主程序定义的变量和在函数中定义的变量都是局部变量。在函数中定义的变量只能在函数内部使用。在主程序中定义的变量
只能在主程序中使用,而不能在函数中使用。
代码如下:
function sum()
{
$count=2;
}
sum();
echo $count;
?>

由于函数中的变量无法作用于函数外部,所以上面运行时出错,提示$count变量未定义。
4.函数的返回值
函数声明时,在函数代码中使用return 语句可以立即结束函数的运行,程序返回到时调用该函数的下一条语句。
代码如下:
function my_function($a=1)
{
echo $a;
return; //结束函数的运行,下面的语句将不被运行
$a++;
echo $a;
}
my_function(); //输出1
?>

中断函数并不是return语句常用的功能,许多函数使用return语句返回一个值来与调用它们的代码进行交互。函数的返回值可以是任何类型,包括列表对象
5.函数的调用
在函数声明后可以被调用了,另外函数如果没有返回值,调用进使用函数名即可。如果函数具有返回值,则可以将函数的返回值赋给一个变量。
代码如下:
//对一个数组进行升序排序的函数my_sort()
function my_sort($array)
{
for($i=0;$i{
for($j=$i+1;$j{
if($array[$i]>$array[$j])
{
$tmp=$array[$j];
$array[$j]=$array[$i];
$array[$i]=$tmp;
}
}
}
return $array;
}
$arr=array(6,4,7,5,9,2); //未排序的数组
$sort_arr=my_sort($arr); //将排序后的数组赋给$sort_arr
foreach($sort_arr as $num)
echo $num; //输出245679
?>

6.递归函数
php支持递归函数,递归函数就是自己调用自已,可以实现循环的作用。
求10!
例如:
代码如下:
function factorial($n)
{
if($n==0)
return 1; //如果$n为0则返回1
else
return $n*factorial($n1); //递归调用,直到$n等于0为止 }
echo factorial(10); //输出3628800
?>

使用递归一事实上要给出递归终止条件,否则函数将一直执行下去直到内存耗尽,或达到最大调用次数。
使用递归一事实上要给出递归终止条件,否则函数将一直执行下去直到内存耗尽,或达到最大调用次数。
7.变量函数
php有函数变量这个概念,在变量的后面加上一对小括号就构成一个变量函数。
$count();
8.系统函数
9.实例-设计一个计算器程序
代码如下:


计算器程序














function cac($a, $b, $caculate) //定义cac函数,用于计算两个数的结果
{
if($caculate=="+") //如果为加法则相加
return $a+$b;
if($caculate=="-") //如果为减法则相减
return $a-$b;
if($caculate=="*") //如果为乘法则返回乘积
return $a*$b;
if($caculate=="/")
{
if($b=="0") //判断除数是否为0
echo "除数不能等于0";
else
return $a/$b; //除数不为0则相除
}
}
if(isset($_POST['ok']))
{
$number1=$_POST['number1']; //得到数1
$number2=$_POST['number2']; //得到数2
$caculate=$_POST['caculate']; //得到运算的动作
//调用is_numeric()函数判断接收到的字符串是否为数字
if(is_numeric($number1)&&is_numeric($number2))
{
//调用cac函数计算结果
$answer=cac($number1,$number2,$caculate);
echo "<script>alert('".$number1.$caculate.$number2."=".$answer."')</script>";
}
else
echo "<script>alert('输入的不是数字!')</script>";
}
?>
陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
3 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

DVWA

DVWA

Damn Vulnerable Web App (DVWA) 是一個PHP/MySQL的Web應用程序,非常容易受到攻擊。它的主要目標是成為安全專業人員在合法環境中測試自己的技能和工具的輔助工具,幫助Web開發人員更好地理解保護網路應用程式的過程,並幫助教師/學生在課堂環境中教授/學習Web應用程式安全性。 DVWA的目標是透過簡單直接的介面練習一些最常見的Web漏洞,難度各不相同。請注意,該軟體中

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

將Eclipse與SAP NetWeaver應用伺服器整合。

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強大的PHP整合開發環境