PHP 函數傳回值的型別如何推斷?

WBOY
發布: 2024-04-10 21:24:01
原創
1007 人瀏覽過

PHP 8 引入了類型推斷功能,允許在函數宣告中指定傳回類型(如 functionName(): 型)。例如,一個名為 sum 的函數傳回 int 類型,可透過 $name = $user->getName() 來呼叫。需要注意,實際傳回類型必須與聲明傳回類型一致,否則將引發 TypeError 異常。

PHP 函数返回值的类型如何推断?

PHP 函數傳回值的類型推斷

在PHP 8 中,引入了類型推斷功能,可協助您推斷函數傳回值的類型。這透過在函數聲明中指定期望的返回類型來完成。語法如下:

function functionName(): type {
  // 函数体
}
登入後複製

例如,我們定義了一個名為sum 的函數,它將兩個數字相加並傳回一個整數值:

function sum(int $a, int $b): int {
  return $a + $b;
}
登入後複製

實戰案例

假設我們有一個User 類,它有一個getName 方法,該方法傳回一個字串:

class User {
  public function getName(): string {
    return "John Doe";
  }
}
登入後複製

以下是如何使用類型推斷呼叫getName 方法:

$user = new User();
$name = $user->getName(); // $name 将被推断为字符串类型
登入後複製

注意事項

  • 如果實際傳回類型與宣告的傳回類型不匹配,PHP 將引發一個TypeError 異常。
  • 對於繼承類,衍生類別的回傳類型可以覆寫基底類別的回傳類型。
  • 對於聯合類型(例如 int|string),函數可以傳回任何符合聯合類型的類型。
  • 您仍然可以使用 @return 標籤來指定函數傳回值的類型,但它將被類型推斷功能所覆寫。

以上是PHP 函數傳回值的型別如何推斷?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!