php 中的參數(shù)傳遞有值傳遞和引用傳遞兩種方式,返回值類型可以指定返回的數(shù)據(jù)類型。值傳遞:函數(shù)處理的是參數(shù)值的副本,對參數(shù)修改不影響調(diào)用函數(shù)的變量。引用傳遞:函數(shù)直接處理調(diào)用函數(shù)中變量的地址,對參數(shù)修改會影響調(diào)用函數(shù)的變量。支持的返回值類型包括 int、float、string、array、object、callable、void。
PHP 函數(shù)的參數(shù)傳遞和返回值類型
參數(shù)傳遞
PHP 函數(shù)可以使用值傳遞或引用傳遞來接收參數(shù)。
值傳遞:函數(shù)以參數(shù)值的副本工作。對參數(shù)所做的任何更改都不會影響調(diào)用函數(shù)的變量。
引用傳遞:函數(shù)直接處理調(diào)用函數(shù)中變量的內(nèi)存地址。對參數(shù)所做的任何更改都會影響調(diào)用函數(shù)中的變量。
使用方法:
在函數(shù)定義中,在參數(shù)名稱前面使用 &
符號來啟用引用傳遞。
例如:
function addByReference(&$num) { $num++; }
登錄后復(fù)制
返回值類型
PHP 函數(shù)也可以指定返回值類型。這意味著當你從函數(shù)返回一個值時,PHP 會檢查值的類型并強制轉(zhuǎn)換它,以匹配指定的類型。
語法:
function function_name(param_type $param_name): return_type { // 函數(shù)代碼 }
登錄后復(fù)制
支持的類型:
PHP 支持以下返回類型:
int
:整數(shù)float
:浮點數(shù)string
:字符串array
:數(shù)組object
:對象callable
:可調(diào)用(函數(shù))void
:無返回類型
例如:
function getSum(int $a, int $b): int { return $a + $b; }
登錄后復(fù)制
實戰(zhàn)案例
值傳遞示例:
<?php $num = 10; function add($num) { $num++; } add($num); echo $num; // 輸出:10,因為參數(shù)是按值傳遞的 ?>
登錄后復(fù)制
引用傳遞示例:
登錄后復(fù)制
返回值類型示例:
<?php function getGreeting(string $name): string { return "Hello, $name!"; } $greeting = getGreeting("John"); echo $greeting; // 輸出:Hello, John! ?>
登錄后復(fù)制