婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > PHP方法的返回值示例詳解

PHP方法的返回值示例詳解

熱門標簽:400電話鄭州申請 黔江400電話如何辦理 中原區電話機器人價格 ai電話機器人加盟代理 地圖標注視頻廣告入駐 電銷機器人便宜的有嗎 gps 地圖標注軟件 OMG地圖標注app 招標自動語音外呼系統

前言

不僅是PHP,大部分編程語言的函數或者叫方法,都可以用return來定義方法的返回值。從函數這個叫法來看,本身它就是一個計算操作,因此,計算總會有個結果,如果你在方法體中處理了結果,比如進行了持久化保存,那么這個函數就不用返回任何內容。而計算的結果是要給外部使用的,這時候就要將計算結果進行返回了。

return關鍵字

function testA($a, $b)
{
 echo $a + $b;
}

var_dump(testA(1, 2)); // NULL

function testB($a, $b)
{
 return $a + $b;
}

var_dump(testB(1, 2)); // 3

function testC($a, $b)
{
 return;
 echo $a + $b; // 后面不會執行了
}

var_dump(testC(1, 2)); // NULL

不用return或者直接return;都會返回NULL,return會阻斷方法體中后續代碼的執行。如果要返回多個值,只能使用數組組裝數據。

function testD($a, $b)
{
 return [
  $a + $b,
  $a * $b,
 ];
}

var_dump(testD(1, 2)); // [3, 2]

返回值類型聲明

關于返回值這一塊還是比較好理解的。下面才是重頭戲,在PHP7的新特性中,返回值聲明是非常亮眼的一道風景。

function testE($a, $b) : bool
{
 if($a+$b == 3){
  return TRUE;
 }else{
  return NULL;
 }
}

var_dump(testE(1, 2)); // true
var_dump(testE(1.1, 2.2)); //TypeError: Return value of testE() must be of the type bool, null returned

如上例所示,如果返回值不是bool類型,那么將直接報TypeError的錯誤。

那么定義了返回值類型聲明有什么好處呢?我們在 PHP方法參數的那點事兒 有介紹過類型聲明的好處,這里就不過多贅述了,不管是參數類型聲明還是返回值類型聲明,都是一樣的。

function testF($a, $b): array
{
 return [
  $a + $b,
  $a * $b,
 ];
}
var_dump(testF(1, 2)); // [3, 2]

interface iA{

}
class A implements iA
{}
class B extends A
{
 public $b = 'call me B!';
}

function testG(): A
{
 return new B();
}

function testH(): B
{
 return new B();
}

function testI(): iA
{
 return new B();
}

var_dump(testG()); // B的實例
var_dump(testH()); // B的實例
var_dump(testI()); // B的實例

同樣,數組和類類型都是可以聲明定義的。不過除此之外,返回值聲明還可以定義void。它的作用其實就是聲明返回值為NULL,不能直接寫:NULL,而只能用:void來進行聲明。

function testJ(): void
{
 echo "testJ";
 // return 1;
}
var_dump(testJ());

這時,如果嘗試進行任何的return返回,都會直接報錯:Fatal error: A void function must not return a value。

總結

我們可以看到,PHP在不斷的發展中一直在吸取其他語言中的優秀特性。很明顯,添加這些類型聲明的目的就是為了將來的編譯器做準備的。這也是PHP8的一個重要特性,讓我們拭目以待吧!

到此這篇關于PHP方法的返回值的文章就介紹到這了,更多相關PHP方法返回值內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

測試代碼:

https://github.com/zhangyue0503/dev-blog/blob/master/php/201911/source/PHP方法的返回值.php
參考文檔:

https://www.php.net/manual/zh...

您可能感興趣的文章:
  • PHP CURL獲取返回值的方法
  • PHP調用MySQL存儲過程并返回值的方法
  • 關于PHP通用返回值設置方法
  • PHP調用存儲過程返回值不一致問題的解決方法分析

標簽:阿里 哈密 濟源 孝感 那曲 日照 北京 池州

巨人網絡通訊聲明:本文標題《PHP方法的返回值示例詳解》,本文關鍵詞  PHP,方法,的,返回,值,示例,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《PHP方法的返回值示例詳解》相關的同類信息!
  • 本頁收集關于PHP方法的返回值示例詳解的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 德格县| 安溪县| 高邑县| 中江县| 新蔡县| 二连浩特市| 根河市| 天柱县| 钟山县| 蒲城县| 天台县| 平江县| 芦溪县| 河南省| 江西省| 吉木乃县| 景泰县| 金阳县| 来安县| 霍城县| 吉安市| 高雄市| 卢龙县| 怀来县| 甘南县| 宁阳县| 沂水县| 来安县| 盱眙县| 辽宁省| 南昌县| 鹤峰县| 中方县| 句容市| 南通市| 云浮市| 洛南县| 蓝田县| 威海市| 丹寨县| 罗城|