# PHP 函數
**PHP 的真正力量來自它的函數:它擁有超過 1000 個內建的函數。**
## PHP 用戶定義函數
除了內建的 PHP 函數,我們可以創建我們自己的函數。
函數是可以在程序中重復使用的語句塊。
頁面加載時函數不會立即執行。
函數只有在被調用時才會執行。
## 在 PHP 創建用戶定義函數
用戶定義的函數聲明以關單 "function" 開頭:
### 語法
```
function functionName() {
被執行的代碼;
}
```
注釋:函數名能夠以字母或下劃線開頭(而非數字)。
注釋:函數名對大小寫不敏感。
提示:函數名應該能夠反映函數所執行的任務。
在下面的例子中,我們創建名為 "writeMsg()" 的函數。打開的花括號({)指示函數代碼的開始,而關閉的花括號(})指示函數的結束。此函數輸出 "Hello world!"。如需調用該函數,只要使用函數名即可:
### 實例
```
<?php
function writeMsg() {
echo "Hello world!";
}
writeMsg(); // 調用函數
?>
```
## PHP 函數參數
可以通過參數向函數傳遞信息。參數類似變量。
參數被定義在函數名之后,括號內部。您可以添加任意多參數,只要用逗號隔開即可。
下面的例子中的函數有一個參數($fname)。當調用 familyName() 函數時,我們同時要傳遞一個名字(例如 Bill),這樣會輸出不同的名字,但是姓氏相同:
### 實例
```
<?php
function familyName($fname) {
echo "$fname Zhang.<br>";
}
familyName("Li");
familyName("Hong");
familyName("Tao");
familyName("Xiao Mei");
familyName("Jian");
?>
```
下面的例子中的函數有兩個參數($fname 和 $year):
### 實例
```
<?php
function familyName($fname,$year) {
echo "$fname Zhang. Born in $year <br>";
}
familyName("Li","1975");
familyName("Hong","1978");
familyName("Tao","1983");
?>
```
## PHP 默認參數值
下面的例子展示了如何使用默認參數。如果我們調用沒有參數的 setHeight() 函數,它的參數會取默認值:
### 實例
```
<?php
function setHeight($minheight=50) {
echo "The height is : $minheight <br>";
}
setHeight(350);
setHeight(); // 將使用默認值 50
setHeight(135);
setHeight(80);
?>
```
## PHP 函數 - 返回值
如需使函數返回值,請使用 return 語句:
### 實例
```
<?php
function sum($x,$y) {
$z=$x+$y;
return $z;
}
echo "5 + 10 = " . sum(5,10) . "<br>";
echo "7 + 13 = " . sum(7,13) . "<br>";
echo "2 + 4 = " . sum(2,4);
?>
```
- PHP 基礎
- PHP 簡介
- PHP 安裝
- PHP 語法
- PHP 變量
- PHP 5 echo 和 print 語句
- PHP 數據類型
- PHP 字符串函數
- PHP 常量
- PHP 運算符
- PHP if...else...elseif 語句
- PHP Switch 語句
- PHP while 循環
- PHP for 循環
- PHP 函數
- PHP 數組
- PHP 數組排序
- PHP 全局變量 - 超全局變量
- PHP 魔術變量
- PHP 命名空間(namespace)
- PHP 表單
- PHP 表單處理
- PHP 表單驗證
- PHP 表單驗證 - 必填字段
- PHP 表單驗證 - 驗證 E-mail 和 URL
- PHP 表單驗證 - 完成表單實例
- PHP $_GET 變量
- PHP $_POST 變量
- PHP 高級
- PHP 多維數組
- PHP 日期和時間
- PHP Include 文件
- PHP 文件處理
- PHP 文件打開/讀取/讀取
- PHP 文件創建/寫入
- PHP 文件上傳
- PHP Cookies
- PHP Sessions
- PHP 發送電子郵件
- PHP 安全的電子郵件
- PHP 錯誤處理
- PHP 異常處理
- PHP 過濾器(Filter)
- PHP JSON
- PHP 數據庫
- PHP MySQL 簡介
- PHP 連接 MySQL
- PHP MySQL 創建數據庫
- PHP 創建 MySQL 表
- PHP MySQL 插入數據
- PHP MySQL 插入多條數據
- PHP MySQL 預處理語句
- PHP MySQL 讀取數據
- PHP MySQL Where 子句
- PHP MySQL Order By 關鍵詞
- PHP MySQL Update
- PHP MySQL Delete
- PHP 數據庫 ODBC
- PHP XML
- PHP XML Expat 解析器
- PHP XML DOM
- PHP SimpleXML
- PHP AJAX
- AJAX 簡介
- AJAX XMLHttpRequest
- PHP 和 AJAX 請求
- PHP 和 AJAX XML 實例
- PHP 和 AJAX MySQL 數據庫實例
- PHP 和 AJAX responseXML 實例
- PHP 和 AJAX Live Search
- PHP 和 AJAX RSS 閱讀器
- PHP 和 AJAX 投票
- 免責聲明