函數(shù):
為了完成某一功能的程序指令(語句)的集合;
php中函數(shù)分為:自定義函數(shù)鸦概、系統(tǒng)函數(shù)箩张。
1、關(guān)鍵字:function窗市;
2先慷、自定義函數(shù)語法:
function 函數(shù)名(參數(shù)列表){
//函數(shù)體(完成某一功能的指令集合)
//return語句(可選)
}
3、引入php文件require 'xxx.php'咨察、require_once 'xxx.php'论熙、include 'xxx.php'、include_once 'xxx.php'摄狱;
require脓诡、require_once區(qū)別:
前者遇到即包含文件,后者會(huì)判斷是否已經(jīng)包含過了媒役,如包含則不再包含文件祝谚,可節(jié)省資源、避免重復(fù)定義的錯(cuò)誤酣衷。
include交惯、include_once區(qū)別:
他們的作用和功能都可以把一個(gè)頁面包含到另一個(gè)頁面,區(qū)別與上面require、require_once一樣商玫。
require與include區(qū)別:
require 'xx.php'; echo 'xxxx';
include 'xx.php'; echo 'xxxx';
如果xx.php文件不存在箕憾,require時(shí)就終止了,后面echo不會(huì)執(zhí)行拳昌;而include不會(huì)中斷后面照樣執(zhí)行袭异。
小結(jié):我們做項(xiàng)目的時(shí)候基本使用的require_once。
函數(shù)類編碼:
<?php
//1炬藤、function是關(guān)鍵字
//2御铃、calculator函數(shù)名(自定義取名但不能是關(guān)鍵字)
//3、$num1,$num2,$oper函數(shù)的參數(shù)列表(形參)
function calculator($num1,$num2,$oper) {
$res=0;//計(jì)算結(jié)果
switch ($oper) {
case '+':
$res=$num1+$num2;
break;
case '-':
$res=$num1-$num2;
break;
case '*':
$res=$num1*$num2;
break;
case '/':
$res=$num1/$num2;
break;
default:
echo "運(yùn)算符有誤";
break;
}
return $res;
}
?>
調(diào)用函數(shù)類:
<!DOCTYPE html>
<html>
<head>
<title>使用函數(shù)用來計(jì)算</title>
<meta http-equiv="content-type" content="text/html;charset=utf-8"/>
</head>
<?php
require 'Functions.php';//引入需要的php文件
//調(diào)用函數(shù)沈矿,方法一
$num1=12;
$num2=89;
$oper="*";
$res=calculator($num1,$num2,$oper);
echo "計(jì)算結(jié)果是:".$res;
//方法二
$res=calculator(21,32,"*");
echo "<br/>計(jì)算結(jié)果是:".$res;
?>
</html>
函數(shù)調(diào)用細(xì)節(jié):
1上真、安裝函數(shù)執(zhí)行的規(guī)則,只要一看到函數(shù)羹膳,php就會(huì)開辟一個(gè)新棧(空間)睡互;
2、各個(gè)棧間的變量是相互獨(dú)立的陵像。
如果在函數(shù)中就珠,不希望使用某個(gè)變量或者是希望徹底不再使用某個(gè)變量,則可以使用unset(變量名)醒颖;將該變量徹底刪除妻怎。這樣也可以防止全局變量的混亂使用。
$i=12;
function efg($i) {
unset($i);
$i=45;
}
efg($i);
echo $i;