php自訂函數聲明,調用,參數和返回值基礎教程
就像數學中的函數一樣,y=f(x)
是函數基本的表達形式,x
可看做是參數,y
可看做是回傳值,也就是函數定義就是一個被命名的、獨立的程式碼片段,它執行特定的任務,並可能會為呼叫它的程式傳回一個值。
自訂函數
函數的宣告
在寫程式的過程中,我們會經常碰到某些功能模組在PHP中沒有提供系統函數,這樣就需要我們自己定義函數,即自訂函數,自訂函數的規則如下:
#每個函數的第一行都是函數頭,由宣告函數###的關鍵字function
、函數名稱、參數清單三部分組成。
- 每個自訂函數都必須使用
function
關鍵字宣告。
- 函數名稱可以代表整個函數,可以將函數命名為任何名稱,只要遵循變數名稱的命名規則即可。但函數名稱必須唯一,且不能與系統函數重名。
- 宣告函數時函數名稱後面的花括號也是必須有的,在花括號中顯示了一組可以接受的參數列表,參數就是宣告的變量,然後在呼叫函數時傳遞給它值。參數清單可以沒有,也可以有—個或多個參數,多個參數使用逗號分隔。
- 函數體位於函數頭後面,用花括號括起來。函數被呼叫後,執行到
retun
語句或最外面的花括號後結束,回到呼叫的程式。
- 使用關鍵字
return
可以從函數中傳回一個值,然後回到呼叫程式處繼續執行。
<?php
/* 将使用双层for循环输出表格的代码声明为函数,函数名为table */
function table() {
echo "<table align='center' border='1' width='600'>";
for($out=0; $out < 10; $out++ ) {
$bgcolor = $out%2 == 0 ? "red" : "blue";//各行换背景色
echo "<tr bgcolor=".$bgcolor.">";
for($in=0; $in <10; $in++) {
echo "<td>".($out*10+$in)."</td>";
} echo "</tr>";
} echo "</table>";
}
?>
登入後複製
函數的呼叫#不管是自訂的函數還是系統函數,如果函數不被調用,就不會執行。函數被呼叫後開始執行函數體中的程式碼,執行完畢返回到呼叫的位置繼續向下執行。呼叫規則如下:<?php /* 将使用双层for循环输出表格的代码声明为函数,函数名为table */ function table() { echo "<table align='center' border='1' width='600'>"; for($out=0; $out < 10; $out++ ) { $bgcolor = $out%2 == 0 ? "red" : "blue";//各行换背景色 echo "<tr bgcolor=".$bgcolor.">"; for($in=0; $in <10; $in++) { echo "<td>".($out*10+$in)."</td>"; } echo "</tr>"; } echo "</table>"; } ?>
- 透過函數名稱去呼叫函數。
- 如果函數有參數列表,也可以透過函數名稱後面的圓括號傳入對應的值給參數,在函數體中使用參數來改變函數內部程式碼的執行行為。
- 如果函數有回傳值,當函數執行完畢時就會將
return
後面的值傳回呼叫函數的位置。
<?php
/* 将使用双层for循环输出表格的代码声明为函数,函数名为table */
function table() {
echo "<table align='center' border='1' width='600'>";
for($out=0; $out < 10; $out++ ) {
$bgcolor = $out%2 == 0 ? "red" : "blue";//各行换背景色
echo "<tr bgcolor=".$bgcolor.">";
for($in=0; $in <10; $in++) {
echo "<td>".($out*10+$in)."</td>";
} echo "</tr>";
} echo "</table>";
}
?>
登入後複製
<?php /* 将使用双层for循环输出表格的代码声明为函数,函数名为table */ function table() { echo "<table align='center' border='1' width='600'>"; for($out=0; $out < 10; $out++ ) { $bgcolor = $out%2 == 0 ? "red" : "blue";//各行换背景色 echo "<tr bgcolor=".$bgcolor.">"; for($in=0; $in <10; $in++) { echo "<td>".($out*10+$in)."</td>"; } echo "</tr>"; } echo "</table>"; } ?>
函數的參數
參數清單是由零個、一個或多個參數組成的。每個參數是一個表達式,用逗號分隔。對於有參函數,在PHP腳本程式中和被呼叫函數之間有資料傳遞關係。定義函數時函數名稱後面括號內的表達式稱為形式參數(簡稱「形參」),被呼叫函數名後面括號中的表達式稱為實際參數(簡稱「實參」),實參和形參需要接順序對應傳遞資料。如果函數沒有參數列表,函數執行的任務就是固定的,用戶在呼叫函數時不能改變函數內部的一些執行行為。 Demo<?php
/**自定义函数table()时,声明三个参数,参数之间使用逗号分隔
@param string $tableName 需要一个字符串类型的表名
@param int $rows 需要一个整型数值设置表格的行数
@param int $cols 需要另一个整型值设置表格的列数 */
function table( $tableName, $rows, $cols ) {
echo "<table align='center' border='1' width='600'>";
echo "<caption><h1> $tableName </h1></caption>";
for($out=0; $out < $rows; $out++ ) { //使用第二个参数$rows指定表行数
$bgcolor = $out%2 == 0 ? "red" : "blue";
echo "<tr bgcolor=".$bgcolor.">";
for($in=0; $in < $cols; $in++) { //使用第三个参数$cols指定表列数
echo "<td>".($out*$cols+$in)."</td>";
} echo "</tr>";
} echo "</table>";
}
?>
<?php
table("表格",10,10);
?>
登入後複製
<?php /**自定义函数table()时,声明三个参数,参数之间使用逗号分隔 @param string $tableName 需要一个字符串类型的表名 @param int $rows 需要一个整型数值设置表格的行数 @param int $cols 需要另一个整型值设置表格的列数 */ function table( $tableName, $rows, $cols ) { echo "<table align='center' border='1' width='600'>"; echo "<caption><h1> $tableName </h1></caption>"; for($out=0; $out < $rows; $out++ ) { //使用第二个参数$rows指定表行数 $bgcolor = $out%2 == 0 ? "red" : "blue"; echo "<tr bgcolor=".$bgcolor.">"; for($in=0; $in < $cols; $in++) { //使用第三个参数$cols指定表列数 echo "<td>".($out*$cols+$in)."</td>"; } echo "</tr>"; } echo "</table>"; } ?> <?php table("表格",10,10); ?>
函數的回傳值
函數的回傳值是函數執行的結果,呼叫函數的腳本程式不能直接使用函數體裡面的信息,但可以透過關鍵字return向呼叫者傳遞資料。
return語句注意點如下:
return
語句可以向函數呼叫者傳回函數體中任意執行結果值。
- 在函數體中如果執行了
return
語句,它後面的語句就不會被執行。
<?php
/** 自定义函数table()时,声明三个参数,参数之间使用逗号分隔
@param string $tableName 需要一个字符串类型的表名
@param int $rows 需要一个整型数值设置表格的行数
@param int $cols 需要另一个整型值设置表格的列数 */
function table( $tableName, $rows, $cols ) { $returnStr="这是返回的字符串";
echo "<table align='center' border='1' width='600'>";
echo "<caption><h1> $tableName </h1></caption>";
for($out=0; $out < $rows; $out++ ) { //使用第二个参数$rows指定表行数
$bgcolor = $out%2 == 0 ? "red" : "blue";
echo "<tr bgcolor=".$bgcolor.">";
for($in=0; $in < $cols; $in++) { //使用第三个参数$cols指定表列数
echo "<td>".($out*$cols+$in)."</td>";
} echo "</tr>";
} echo "</table>";
return $returnStr;
}
?>
<?php
echo table("表格",10,10);
?>
登入後複製
<?php /** 自定义函数table()时,声明三个参数,参数之间使用逗号分隔 @param string $tableName 需要一个字符串类型的表名 @param int $rows 需要一个整型数值设置表格的行数 @param int $cols 需要另一个整型值设置表格的列数 */ function table( $tableName, $rows, $cols ) { $returnStr="这是返回的字符串"; echo "<table align='center' border='1' width='600'>"; echo "<caption><h1> $tableName </h1></caption>"; for($out=0; $out < $rows; $out++ ) { //使用第二个参数$rows指定表行数 $bgcolor = $out%2 == 0 ? "red" : "blue"; echo "<tr bgcolor=".$bgcolor.">"; for($in=0; $in < $cols; $in++) { //使用第三个参数$cols指定表列数 echo "<td>".($out*$cols+$in)."</td>"; } echo "</tr>"; } echo "</table>"; return $returnStr; } ?> <?php echo table("表格",10,10); ?>
以上是php自訂函數聲明,調用,參數和返回值基礎教程的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

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

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

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

PHP 8.4 帶來了多項新功能、安全性改進和效能改進,同時棄用和刪除了大量功能。 本指南介紹如何在 Ubuntu、Debian 或其衍生版本上安裝 PHP 8.4 或升級到 PHP 8.4

Visual Studio Code,也稱為 VS Code,是一個免費的原始碼編輯器 - 或整合開發環境 (IDE) - 可用於所有主要作業系統。 VS Code 擁有大量針對多種程式語言的擴展,可以輕鬆編寫

JWT是一種基於JSON的開放標準,用於在各方之間安全地傳輸信息,主要用於身份驗證和信息交換。 1.JWT由Header、Payload和Signature三部分組成。 2.JWT的工作原理包括生成JWT、驗證JWT和解析Payload三個步驟。 3.在PHP中使用JWT進行身份驗證時,可以生成和驗證JWT,並在高級用法中包含用戶角色和權限信息。 4.常見錯誤包括簽名驗證失敗、令牌過期和Payload過大,調試技巧包括使用調試工具和日誌記錄。 5.性能優化和最佳實踐包括使用合適的簽名算法、合理設置有效期、

字符串是由字符組成的序列,包括字母、數字和符號。本教程將學習如何使用不同的方法在PHP中計算給定字符串中元音的數量。英語中的元音是a、e、i、o、u,它們可以是大寫或小寫。 什麼是元音? 元音是代表特定語音的字母字符。英語中共有五個元音,包括大寫和小寫: a, e, i, o, u 示例 1 輸入:字符串 = "Tutorialspoint" 輸出:6 解釋 字符串 "Tutorialspoint" 中的元音是 u、o、i、a、o、i。總共有 6 個元

本教程演示瞭如何使用PHP有效地處理XML文檔。 XML(可擴展的標記語言)是一種用於人類可讀性和機器解析的多功能文本標記語言。它通常用於數據存儲

靜態綁定(static::)在PHP中實現晚期靜態綁定(LSB),允許在靜態上下文中引用調用類而非定義類。 1)解析過程在運行時進行,2)在繼承關係中向上查找調用類,3)可能帶來性能開銷。

PHP的魔法方法有哪些? PHP的魔法方法包括:1.\_\_construct,用於初始化對象;2.\_\_destruct,用於清理資源;3.\_\_call,處理不存在的方法調用;4.\_\_get,實現動態屬性訪問;5.\_\_set,實現動態屬性設置。這些方法在特定情況下自動調用,提升代碼的靈活性和效率。
