什麼是回呼函數?怎麼定義的?其作用是什麼? (詳解及實例)

慕斯
發布: 2023-03-10 11:14:01
原創
5071 人瀏覽過

上篇文章為大家介紹了《PHP中什麼是變數函數?如何使用變數函數? (分享)》,本文繼續介紹什麼是回呼函數?怎麼定義的?其作用是什麼? (詳解及實例)有需要的朋友可以參考一下,希望對大家有幫助。

什麼是回呼函數:

#回呼函數,或簡稱回呼,是指透過函數參數傳遞到其它程式碼的,某一塊可執行程式碼的參考。回調函數不是由該函數的實現方直接調用,而是在特定的事件或條件發生時由另外的一方調用的,用於對該事件或條件進行響應。這項設計允許了底層程式碼呼叫在高層定義的子程式。回調的形式因程式設計語言的不同而不同。

簡單點說,使用者是實作方,實作方需要呼叫A()函數,但為了A()函數具有通用性,需要根據實作方的意願呼叫實作方提供的函數B(),這裡B()即為回呼函數。在Windows程式設計中回呼函數用途很廣泛。

我們以具體程式碼為例:

' ; } function writeB( ){ echo '孤独从一开始注定要用一生来承担 
' ; } function writeC(){ echo ' 任何一件事情,只要心甘情愿,总是能够变得简单
' ; } //回调函数的出现 write('writeA'); write('writeB'); write('writeC'); ?>
登入後複製

程式碼解析:

首先我們先定義一個函數function write();此時變數函數出現,對於回呼函數,我們一樣先定義一推函數,如上述程式碼所示,我透過write函數進行調用,傳出一個字串,緊接著此字串會賦值給變數($func),當我們運行結果時,出現的結果是'風輕雲淡,歲月安好',(代碼結果如下所示),同樣,我們以此類推,依次輸出writeB,writeC,(代碼結果如下所示),因此我們可知,通過變量函數的方式,回過頭呼叫其他的函數,這就是回調函數。

什麼是回呼函數?怎麼定義的?其作用是什麼? (詳解及實例)

實例二:

' ; } function writeB( ){ echo '孤独从一开始注定要用一生来承担 
' ; } function writeC(){ echo ' 任何一件事情,只要心甘情愿,总是能够变得简单
' ; } //回调函数的出现 write('writeA'); write('writeB'); write('writeC'); echo '
'; writeC(); ?>
登入後複製

當然,我們不使用回呼函數,直接輸出write(),也能夠輸出其結果;程式碼結果如下圖所示;

什麼是回呼函數?怎麼定義的?其作用是什麼? (詳解及實例)

什麼是回呼函數?怎麼定義的?其作用是什麼? (詳解及實例)

#根據以上我們再一次總結什麼是回呼函數:

#回呼函數只是變數函數的一種變量,本質上還是變數函數的應用。

在一個函數(A函數)中,透過變數函數的方式$var()呼叫另外一個函數(B函數,C函數),而其函數的名稱透過A函數的參數傳遞進來,這種

方式就是回到函數。因為函數A中的變數函數$var()會根據使用者傳入不同的實參回過頭呼叫不同名稱的其他函數。

function a($var){ $var(); //回调函数要素1,变量函数 } a( 'b )//在a函数中调用b函数回调函数要素2. 传入函数名称字符串。
登入後複製

推薦學習:《PHP影片教學

以上是什麼是回呼函數?怎麼定義的?其作用是什麼? (詳解及實例)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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