首頁 頭條 php7.0函數種類與呼叫方法總結

php7.0函數種類與呼叫方法總結

Jul 28, 2017 pm 03:26 PM
php函數

PHP中的函數看起來很簡單,實際上功能非常強大,我這裡按函數名稱是否固定,可以分為以下三大類:

一、名稱固定的函數:

這類函數,也叫:常規函數,直接用關鍵字function來創建,也是大家最熟悉的類型,例如:

<?php
//1按名调用:最直接和普通的方式
echo &#39;1.用function关键字创建常规函数,按函数名称调用:<br>&#39;;
function add($a, $b){
  return $a.&#39;+&#39;.$b.&#39;=&#39;.($a+$b);
};
echo add(5,6);
echo &#39;<hr>&#39;;
登入後複製

執行返回:

#1.用function關鍵字建立常規函數,依函數名稱呼叫:
5+6=11

 二、名稱動態設定的函數:

這類函數有很多種稱呼,例如:匿名函數、可變函數、變數函數、閉包函數等,其實都一樣的,大家別被名稱嚇住了。

這種動態設定的函數,是用引用這個函數的變數名稱來調用,所以非常適合放在回調函數中使用~~

為了教學需要,我這裡統稱為:匿名函數吧。

匿名函數的創建主要有二種方法,有的教材分開來說了,我這也分開吧。

1、建立方法一:用PHP內建的create_function(參數表,函數體)函數完成,這個函數有二個參數,這二參數必須放在引號中,別問為什麼,PHP就是這樣規定的,如果不服,那你創造出一個程式語言吧~~

<?php
//2.用系统函数create_function()来创建一个匿名函数/可变函数/变量函数/闭包函数
echo &#39;2.用内置create_function()函数创建匿名函数,用变量名调用:<br>&#39;;
$func1 = create_function(&#39;$a,$b&#39;,&#39;return $a.\&#39;+\&#39;.$b.\&#39;=\&#39;.($a+$b);&#39;);
echo $func1(5,6);
echo &#39;<hr>&#39;;
登入後複製

執行返回:

2.用內建create_function()函數建立匿名函數,用變數名稱呼叫:
5+6=11

2、建立方法二:用function關鍵字來建立,建立過程與常規函數一樣,不同之處在於,它出現在值的位置上,也就是'= '等號的右邊。將創建好的函數整體賦給一個變數;

<?php
//3匿名函数:也叫闭包函数,将函数做为值赋给一个变量
echo &#39;3.用function关键字创建匿名函数,用变量名调用:<br>&#39;;
$func2 = function ($a, $b){
  return $a.&#39;+&#39;.$b.&#39;=&#39;.($a+$b);
};
echo $func2(5,6);
echo &#39;<hr>&#39;;
登入後複製

執行回傳:

3.用function關鍵字建立匿名函數,用變數名稱呼叫:
5+6=11

三、沒有函數名稱,創建完直接傳參調用執行:

這類函數,它也匿名函數很像,但更加的粗暴,創建好直接用括號一包,傳上參數就可以呼叫了,所以這類函數根本不需要名字,屬於一次性的函數。就像一次用品,用完就丟掉了。

<?php//4自执行函数:创建完立即执行不必明示调用echo &#39;4.用function关键字创建匿名函数,然后直接传参调用执行:<br>&#39;;//自运行的匿名函数echo (function ($a,$b){return $a.&#39;+&#39;.$b.&#39;=&#39;.($a+$b);})(5,6);
登入後複製

執行回傳:

4.用function關鍵字建立匿名函數,然後直接傳參呼叫執行:
5+6=11

 總結(非常重要,不得不看):

php中,函數的使用還是非常靈活的,但不論如何,函數,歸根到底,還是一個處理過程。同時,也必須要有一個回傳值,才能讓使用者感知它的存在,以及它的價值!

所以,函數總是當做一個值來使用,因此,不能出現在等號'='的左邊,這就是函數與語言結構的最大差異。

例如,我們常說:echo()和list()是一個語言結構,不是一個函數,儘管看上去長得與函數一樣,就是因為它們可以放在等號的左邊,可以接受賦值。而函數不行。希望這篇文章,讓你對函數有更深的理解~~

文章來源:http://peter.php.cn/blog/detail/188.html 

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
4 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

如何透過php函數優化圖片懶加載效果? 如何透過php函數優化圖片懶加載效果? Oct 05, 2023 pm 12:13 PM

如何透過PHP函數優化圖片懶載入效果?隨著網路的發展,網頁中的圖片數量越來越多,這給頁面載入速度帶來了壓力。為了提高使用者體驗,減少載入時間,我們可以採用圖片懶載入技術。圖片懶加載可以延遲圖片的加載,只有當用戶滾動到可視區域時才加載圖片,這樣可以減少頁面的加載時間,提升用戶體驗。在編寫PHP網頁時,我們可以透過寫一些函數來優化圖片懶載入效果。下面詳

PHP函數介紹—curl_multi_getcontent(): 取得一個cURL會話的內容 PHP函數介紹—curl_multi_getcontent(): 取得一個cURL會話的內容 Jul 26, 2023 pm 03:01 PM

PHP函數介紹—curl_multi_getcontent():取得一個cURL會話的內容在PHP開發中,我們常常需要透過網路去請求其他伺服器的資料。而cURL(ClientURL)是一個功能強大的PHP擴充庫,用於在PHP中進行網路通訊。 cURL提供了一系列的函數,其中之一就是curl_multi_getcontent(),它用來取得一個cURL會話的

如何透過php函數來減少記憶體的使用? 如何透過php函數來減少記憶體的使用? Oct 05, 2023 pm 01:45 PM

如何透過PHP函數來減少記憶體的使用在開發中,記憶體的使用是一個很重要的考量。如果在程式中使用大量的內存,可能會導致運行速度變慢甚至程式崩潰。因此,合理地管理和減少記憶體的使用是每個PHP開發者都應該關注的問題。本文將介紹一些透過PHP函數來減少記憶體使用的方法,並提供具體的程式碼範例供讀者參考。使用unset()函數釋放變數在PHP中,當一個變數不再需要時,使用

PHP Deprecated: Function ereg_replace() is deprecated - 解決方法 PHP Deprecated: Function ereg_replace() is deprecated - 解決方法 Aug 18, 2023 am 10:48 AM

PHPDeprecated:Functionereg_replace()isdeprecated-解決方法在使用PHP進行開發時,我們經常會遇到一些函數被宣佈為已廢棄(deprecated)的問題。這意味著在最新的PHP版本中,這些函數可能會被刪除或被取代。其中一個常見的例子就是ereg_replace()函數。 ereg_replace

PHP影像處理函數實現圖片編輯和處理功能的方法總結 PHP影像處理函數實現圖片編輯和處理功能的方法總結 Nov 20, 2023 pm 12:31 PM

PHP影像處理函數是一組專門用於處理和編輯影像的函數,它們為開發人員提供了豐富的影像處理功能。透過這些函數,開發人員可以實現圖片的裁剪、縮放、旋轉、浮水印添加等操作,從而滿足不同的圖片處理需求。首先,我將介紹如何使用PHP影像處理函數來實現圖片的裁切功能。 PHP提供了imagecrop()函數,可以用來裁切影像。透過傳遞裁剪區域的座標和大小,我們可以實現圖片的裁

PHP函數的效能如何? PHP函數的效能如何? Apr 18, 2024 pm 06:45 PM

不同PHP函數的效能對應用程式效率至關重要。效能較好的函數包括echo、print,而str_replace、array_merge、file_get_contents等函數效能較慢。例如,str_replace函數用於替換字串,性能中等,而sprintf函數用於格式化字串。效能分析表明,執行一個範例僅需0.05毫秒,證明了函數效能良好。因此,明智地使用函數可以建立更快、更有效率的應用程式。

PHP 函數與其他語言函數的比較 PHP 函數與其他語言函數的比較 Apr 10, 2024 am 10:03 AM

PHP函數與其他語言的函數有相似之處,也有一些獨特之處。在語法上,PHP函數用function聲明,JavaScript用function聲明,Python用def聲明。參數和傳回值方面,PHP函數可接受參數並傳回一個值,JavaScript和Python也有類似功能,但語法不同。範圍上,PHP、JavaScript和Python的函數均具有全域或局部範圍,全域函數可從任意位置訪問,局部函數只能在其聲明作用域內存取。

PHP 函數與 Flutter 函數的異同 PHP 函數與 Flutter 函數的異同 Apr 24, 2024 pm 01:12 PM

PHP和Flutter函數的主要區別在於聲明、語法和傳回類型。 PHP函數使用隱式傳回型別轉換,而Flutter函式明確指定傳回型別;PHP函式可透過?指定選用參數,而Flutter函式使用required和[]指定必填和選用參數;PHP函式使用=傳遞命名參數,而Flutter函式使用{}指定命名參數。