PHP中的函式

2021-09-12 04:02:32 字數 2267 閱讀 1052

一、初識函式

函式:封裝一段用於完成特定功能的**。

通俗理解函式:可以完成某個工作的**塊,就像小朋友搭房子用的積木一樣,可以反覆使用,在使用的時候,拿來即用,而不用考慮它的內部構成。

函式的分類:①內建函式(字串操作函式、陣列操作函式)②自定義函式

二、函式的基本語法

function 函式名([ 引數1 , 引數2 , …… ])

函式的定義由以下4部分組成:

1、關鍵字 function

2、函式名 functionname

3、引數

4、函式體

三、關於函式的部分宣告

1、function:在宣告函式時必須使用的關鍵字

2、函式名:要符合 php 的識別符號,且函式名是唯一的,不區分大小寫

3、[引數1, 引數2…]:外界傳遞給函式的值,它是可選的,多個引數之間使用逗號「,」分隔。

4、函式體:函式定義的主體,專門用於實現特定功能的**段。

5、返回值:需要使用return關鍵字將需要返回的資料傳遞給呼叫者。

四、function內的引數設定

① 無參函式

對於函式來說,引數的不同設定,決定了其呼叫和使用方式。

例如:	

function shout()

echo shout();// 輸出結果:come on

② 按值傳遞引數

php預設支援按值傳遞引數,按此種方式定義的函式,在函式內部可以隨意對使用者傳遞的引數進行操作。

例如:	

// 方式一

echo add(5, 7);

// 方式二

$x = 5;

$y = 7;

echo add($x, $y);

③ 引用傳參

在開發中,若需要函式修改它的引數值,則需通過函式引數的引用傳遞。實現方式只需在引數前新增「&」符號即可。

function extra(&$str)

④ 設定引數預設值

函式引數在設定時,還可以為其指定預設值,也就是可選引數。當呼叫者未傳遞該引數時,函式將使用預設值進行操作。

function say($p, $con = 'say "hello"')

⑤ 指定引數型別(弱)

當使用者呼叫函式時,如果傳遞的引數不是int型別,程式會將其強制的轉換為int型後,再進行操作,這種方式稱為弱型別引數設定。

function sum1(int $a, int $b)

echo sum1(2.6, 3.8); // 輸出結果:5

⑤ 指定引數型別(強)

除此之外,還可以將其設定為強型別的引數,即當使用者傳遞的引數型別不符合函式的定義,程式會報錯提醒。

declare(strict_types = 1);

function sum2(int $a, int $b)

echo sum2(2.6, 3.8); // 輸出結果:fatal error: ......

五、變數的作用域

變數只有在其作用範圍內才可以被使用,這個作用範圍稱為變數的作用域。

在函式中定義的變數稱為區域性變數

在函式外定義的變數稱為全域性變數

示例:

function test()

$sum = 0; // 全域性變數

echo test(); // 輸出結果:36

echo $sum; // 輸出結果:0

六、函式的高階應用

1、靜態變數

一是在函式中使用全域性變數記錄,缺點是全域性變數可隨時在函式外被改變,不能準確的記錄;二是在函式中使用靜態變數。

function num()

2、字串函式

php提供了mb_strlen()函式,用於準確的獲取字串的長度。在使用mb_strlen()函式前,首先要確保php配置檔案中開啟了「extension=php_mbstring.dll」擴充套件。

3、數學函式

為了方便開發人員處理程式中的數**算,php內建了一系列的數學函式,用於獲取最大值、最小值、生成隨機數等常見的數**算。

echo ceil(5.2); // 輸出結果:6

echo floor(7.8); // 輸出結果:7

echo rand(1, 20); // 隨機輸出1到20間的整數

php中的函式

function add a,b add 2,3 echo echo add 2,4 函式內定義的變數,只能在函式內使用 外部變數,在函式外部定義,作用域為定義處直到本程式末尾 函式中定義全域性變數 global宣告 10 define a hahahaahah function test test...

php中mysql函式 PHP中的MySQL函式

本篇主要介紹採用php語言如何連線mysql資料庫。首先需要檢測服務mysql是否開啟成功。檢視phpinfo 函式 使用php運算元據庫的步驟 一 連線資料庫伺服器 二 選擇資料庫 mysql select db 資料庫名 三 設定編碼格式 mysql set charset utf 8 四 資料...

php中strtok的用法 php函式

不用不知道,一用嚇一跳,php的函式實在太多,今天就碰到乙個完全陌生的函式 strtok。在php手冊查了一下,全是英文的,上網搜一下有了中文解釋 還是直接用php手冊上的例子 php view plain copy string this is tan example nstring tok st...