首頁 後端開發 php教程 php教學:php自訂函數函數應用

php教學:php自訂函數函數應用

Jun 26, 2017 am 11:09 AM
php 函數 應用 教學 自訂

函數的定義:函數就是一段封裝好的程式碼區塊,可以隨時呼叫。在PHP中有兩種函數:自訂函數與系統函數。

自訂函數語法格式:

function  函數名稱([參數1,[參數2]....])

{

函數體(程式內容敘述)

[return 傳回值;]

}

#註:[]裡面的東西可有可無

自訂函數的名稱:

  1. 它是函數在程式碼中的識別名稱,函數名稱可以是以字母或下劃線開頭後跟零個或多個字母、下劃線和數字的任何字符串。

  2. 符合變數名稱的命名規則

  3. 函數名稱不區分大小寫。

  4. 函數名不能重複,命名函數函數時不可使用已經宣告的函數(這個和變數的命名不同,變數可以覆蓋前一個變數名,而函數不可以),和PHP系統函數名稱。

函數名稱和變數名稱的差異:

變數名稱嚴格區分大小寫,函數名稱不區分大小寫。

參數(可分為形參和實參):

所謂參數就是:用來把數值從函數外部傳入函數體中,並用來加以運算處理。

參數之間以“,”隔開,當函數不需要任何數值傳入時,可以省略參數。

形參:宣告函數時,函數名稱後面括號內的表達式稱為形參。

function table(形參1,形參2){}

實參:被呼叫函數名稱後面括號中的表達式稱為實參。

table(實參1,實參2);

實參與形參需依序對應傳遞資料。

function table2($rows,$cols,$color='yellow')
{
    echo &#39;<table border="1" bgcolor="&#39;.$color.&#39;">&#39;;
    for($i = 0;$i < $rows;$i++){
        echo &#39;<tr>&#39;;
        for($n = 0;$n <$cols;$n++){
            echo &#39;<td>&#39;.($i*$rows+$n).&#39;</td>&#39;;
        }
        echo &#39;</tr>&#39;;
    }
}
table2(10,10,&#39;red&#39;);
登入後複製

注意:函數參數中,沒有預設值的放到前面,有預設值的放在參數清單中的後邊。

table2($rows,$cols,$color = 'yellow')

傳回值:

當呼叫函數時需要它回傳一些數值,那麼就要在函數體中以return語句實現。

格式如下:

return 回傳值;//回傳值可以是變數或變數或是一個運算式

exit();        //無回傳值void

return語句在函數體中使用時,有以下兩個作用:

  1. #return語句可以向函數呼叫者傳回函數體中任意決定的值。

  2. 將程式控制權傳回呼叫者的作用域,也就是退出函數。在函數中如果執行了return語句,它後面的語句就不會被執行了。

說明:如果函數沒有回傳值,就只能算是執行過程,只靠函數做一些事情還不夠,有時更需要在程式腳本中

#使用函數執行後的結果。由於變數的作用域的差異,呼叫函數的腳本程式不能直接使用函數體裡面的訊息,但可以透過關鍵字return向呼叫者傳遞資料。

echo與return:

echo直接輸出到瀏覽器,不能再加工,不能賦值給變數

return可以賦值給變數,變數是資料的暫存容器( return回傳一個值,等待一個變數接收它)

注意:    如果函數有回傳值,當函數執行完畢時就會將return後面的值回傳到呼叫函數的位置處,這樣就可以把函數名稱當作函數傳回的值使用。 (這時呼叫函數時對ruturn後面的值是不管用的(retrun的值已經回到呼叫函數的位置處,return以前的輸出還是可以照樣輸出),因為她已經變成某個值了無法用funName ();輸出,需要echo funName()才可以輸出。

#cccaaa


cccaaa

函數的呼叫:

格式:函數名稱();


說明:table();


不管是自訂函數還是系統函數,如果函數不被調用,就不會執行。

透過函數名稱去呼叫函數,並讓函數體的程式碼運行,呼叫幾次函數體就會執行幾次。

    在PHP中可以在函數的宣告之後調用,也可以在函數的宣告之前調用,也可以在函數中調用函數。
  1. 駝峰命名法:
  2. <?php
    header("content-type:text/html;charset=utf-8");
    echo show();
    echo &#39;<hr>&#39;;
    
    function show()
    {
        echo &#39;ccc&#39;;
        return &#39;aaa&#39;;
        //return所在行之后的代码不会执行
        echo 111;
    }
    
    //函数的调用,不会将return后面的值返回
    show();
    echo &#39;<hr>&#39;;
    
    //return返回的值 需要一个变量来接收它
    $result = show();
    echo $result;
    echo &#39;<hr>&#39;;
    
    //也可以直接输出 函数名称
    echo show();
    echo &#39;<hr>&#39;;
    登入後複製

    判斷函數是否存在
  3. : function_exists()
function showInfo()
{
}
function ShowInfo()
{
}
登入後複製

PHP

變數的範圍

  • 局部变量

  • 全局变量

  • 静态变量

<?php
$username = &#39;shifang&#39;;
function stu()
{
    $name = &#39;libai&#39;;
    echo $name;
    //无法调用外部的$username,而在函数体内也没有声明$username
10   echo $username;
    echo &#39;xxxx&#39;;
}

stu();
//函数体外无法调用函数体内的变量
16.echo $name;
echo $username;
登入後複製

结果:

libai

Notice: Undefined variable: username in D:\xampp\htdocs\89\Exercise\2016-7-28 PHP function\007quanju.php on line 10

xxxx

Notice: Undefined variable: name in D:\xampp\htdocs\89\Exercise\2016-7-28 PHP function\007quanju.php on line 16

shifang

在PHP的页面中声明的变量,叫“全局变量”.

函数内的变量叫“局部变量”.

二者没有半毛钱关系:函数内的变量,外部无法调用,函数外的变量,函数无法调用

(某戏班子到某学校唱戏,两者的花名册都不可相互调用)

静态变量:

  • PHP支持声明函数变量为静态的(static)。

  • 一个静态变量在所有对该函数的调用之间共享,并且仅在脚本的执行期间函数第一次被调用时被初始化。

  • 要声明函数变量为静态的用关键字static,通常,静态变量的第一次使用时赋予一个初始值。

<?php
function tongji()
{
    static $n = 0;
    echo $n;
    $n++;
}
tongji();
tongji();
tongji();
echo &#39;<hr>&#39;;

function jishu()
{
    $m = 0;
    echo $m;
    $m++;
}
jishu();
jishu();
jishu();
登入後複製

输出结果:
0123


00000


以上是php教學:php自訂函數函數應用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡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脫衣器

Video Face Swap

Video Face Swap

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

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

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

適用於 Ubuntu 和 Debian 的 PHP 8.4 安裝和升級指南 適用於 Ubuntu 和 Debian 的 PHP 8.4 安裝和升級指南 Dec 24, 2024 pm 04:42 PM

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

如何設定 Visual Studio Code (VS Code) 進行 PHP 開發 如何設定 Visual Studio Code (VS Code) 進行 PHP 開發 Dec 20, 2024 am 11:31 AM

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

在PHP API中說明JSON Web令牌(JWT)及其用例。 在PHP API中說明JSON Web令牌(JWT)及其用例。 Apr 05, 2025 am 12:04 AM

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

php程序在字符串中計數元音 php程序在字符串中計數元音 Feb 07, 2025 pm 12:12 PM

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

您如何在PHP中解析和處理HTML/XML? 您如何在PHP中解析和處理HTML/XML? Feb 07, 2025 am 11:57 AM

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

解釋PHP中的晚期靜態綁定(靜態::)。 解釋PHP中的晚期靜態綁定(靜態::)。 Apr 03, 2025 am 12:04 AM

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

什麼是PHP魔術方法(__ -construct,__destruct,__call,__get,__ set等)並提供用例? 什麼是PHP魔術方法(__ -construct,__destruct,__call,__get,__ set等)並提供用例? Apr 03, 2025 am 12:03 AM

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

PHP和Python:比較兩種流行的編程語言 PHP和Python:比較兩種流行的編程語言 Apr 14, 2025 am 12:13 AM

PHP和Python各有優勢,選擇依據項目需求。 1.PHP適合web開發,尤其快速開發和維護網站。 2.Python適用於數據科學、機器學習和人工智能,語法簡潔,適合初學者。

See all articles