国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > PHP > 正文

php高級編程-函數-鄭阿奇

2024-05-04 23:17:43
字體:
來源:轉載
供稿:網友
1.php函數
1.用戶自定義函數

復制代碼 代碼如下:


function 函數名字([$parameter,[,…]])
{
//函數代碼
}


注意:函數名不能與系統函數或用戶已經定義的函數重名。
$parameter為函數參數,函數一般可以有0個或多個參數,
2.參數的傳遞
參數是通過值來傳遞的,例如前面定義func()函數是通過變量$a和$b的值傳遞的。通過值傳遞參數不會因為函數內部參數值的變化而改變函數外部的值。

復制代碼 代碼如下:


<?php
function color(&$col) //定義函數color()
{
$col="yellow";
}
$blue="blue";
color($blue); //調用函數color(),參數使用變量$blue
echo $blue; //輸出"yellow"
?>


3.函數變量的作用域
在主程序定義的變量和在函數中定義的變量都是局部變量。在函數中定義的變量只能在函數內部使用。在主程序中定義的變量
只能在主程序中使用,而不能在函數中使用。

復制代碼 代碼如下:


<?php
function sum()
{
$count=2;
}
sum();
echo $count;
?>


由于函數中的變量無法作用于函數外部,所以上面運行時出錯,提示$count變量未定義。
4.函數的返回值
函數聲明時,在函數代碼中使用return 語句可以立即結束函數的運行,程序返回到時調用該函數的下一條語句。

復制代碼 代碼如下:


<?php
function my_function($a=1)
{
echo $a;
return; //結束函數的運行,下面的語句將不被運行
$a++;
echo $a;
}
my_function(); //輸出1
?>


中斷函數并不是return語句常用的功能,許多函數使用return語句返回一個值來與調用它們的代碼進行交互。<FONT color=#c0504d>函數的返回值可以是任何類型,包括列表對象</FONT>
5.函數的調用
在函數聲明后可以被調用了,另外函數如果沒有返回值,調用進使用函數名即可。如果函數具有返回值,則可以將函數的返回值賦給一個變量。

復制代碼 代碼如下:


//對一個數組進行升序排序的函數my_sort()
function my_sort($array)
{
for($i=0;$i<count($array);$i++)
{
for($j=$i+1;$j<count($array);$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!
例如:

復制代碼 代碼如下:


<?php
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.實例-設計一個計算器程序

復制代碼 代碼如下:


<html>
<head>
<title>計算器程序</title>
</head>
<body>
<form method=post>
<table>
<tr><td><input type="text" size="4">
<select>
<option value="+">+
<option value="-">-
<option value="*">*
<option value="/">/
</select>
<input type="text" size="4">
<input type="submit" value="計算">
</td>
</tr>
</table>
</form>
</body>
</html>
<?php
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>";
}
?>

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 浦江县| 民权县| 泰宁县| 德江县| 四会市| 萨嘎县| 大洼县| 庆安县| 天长市| 盱眙县| 新津县| 竹溪县| 河源市| 崇礼县| 宁夏| 怀柔区| 恭城| 上高县| 新巴尔虎右旗| 栾城县| 台南县| 盐城市| 讷河市| 吉木乃县| 蕉岭县| 樟树市| 同心县| 龙门县| 江安县| 海晏县| 平山县| 泰来县| 青海省| 东兴市| 三穗县| 大新县| 南川市| 黄龙县| 绥滨县| 扬州市| 荆州市|