return 是 PHP 語言結構而非函數,用於終止當前腳本/函數執行並可選返回值。本文系統梳理其核心行為、參數寫法差異、包含文件中的特殊語義及常見誤區。
return expression; // 返回表達式結果(推薦無括號)
return (expression); // 函數式寫法,僅表達式含運算符優先級問題時需要
return; // 直接返回 NULL,終止執行
建議:返回變量時省略括號(return $val;),降低解析開銷。
function add($a, $b) {
return $a + $b;
return $a * $b; // 永遠不會執行
}
$c = add(5, 3); // 8
function test($a) {
if ($a > 10) return "a>10";
else return "a<10";
$b = 45; // 永遠不執行
$c = $b - $a;
echo $c;
}
關鍵差異:return 僅終止當前包含文件執行,返回值作為 include 表達式的值;exit/die 終止整個腳本。
// b.php
// a.php
// 輸出:ba
// 若 b.php 用 exit;
// 輸出:b (a.php 後續不執行)
// config.php
'mysql', 'host' => 'localhost']; ?>
// index.php
// 正常輸出數組
// 若 config.php 無 return
// $config 為 NULL
這是 PHP 實現配置文件、模塊導出的核心機制(如 Laravel 配置文件)。
掌握 return 的作用域邊界與返回值傳遞機制,是編寫模塊化、可測試 PHP 代碼的基礎。