国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

PHP函數(shù)

PHP?函數(shù)

PHP 的真正威力源自于它的函數(shù)。

什么是函數(shù)

我們在之前的學(xué)習(xí)中已經(jīng)使用過大量的函數(shù):var_dump、sprintf以及非常多的數(shù)組函數(shù),他們的特點是什么?

??????? 都可以執(zhí)行一些特定的功能

??????? 都有特殊的名稱

??????? 都有或多或少的參數(shù)

??????? 大多數(shù)函數(shù)都會有返回值,即使沒有也會執(zhí)行特定的操作

??????? 不需要知道函數(shù)內(nèi)部的實現(xiàn)邏輯

函數(shù)存在于大多數(shù)的程序語言中,它們被用于分隔哪些能夠完成獨立明確任務(wù)的代碼。

函數(shù)名稱必須以字母或者下劃線開頭,后面跟隨字母、數(shù)字或者下劃線,另外函數(shù)名是大小寫不敏感的

什么是函數(shù)參數(shù)

我們可以把函數(shù)想象成一個榨汁機,參數(shù)就好比是我們投放進去的水果,而函數(shù)中執(zhí)行的代碼就好比是攪拌機的攪動

參數(shù)不同,函數(shù)返回的結(jié)果也不同,就像投放了橙子后不會出蘋果汁一個道理。函數(shù)也可以接受多個參數(shù),就好比是混合果汁

函數(shù)只留給我們函數(shù)名來調(diào)用,而我們無需了解函數(shù)里的代碼是如何定義的,同樣,我們也不需要了解榨汁機里的工作原理

PHP 內(nèi)建函數(shù)

在 PHP 中,提供了超過 1000 個內(nèi)建的函數(shù)。

如需查看所有數(shù)組函數(shù)的完整參考手冊和實例,請訪問我們的?PHP 參考手冊。

?

PHP 函數(shù)

在本章中,我們將為您講解如何創(chuàng)建自己的函數(shù)。

如要在頁面加載時執(zhí)行腳本,您可以把它放到函數(shù)里。

函數(shù)是通過調(diào)用函數(shù)來執(zhí)行的。

你可以在頁面的任何位置調(diào)用函數(shù)。

創(chuàng)建 PHP 函數(shù)

函數(shù)是通過調(diào)用函數(shù)來執(zhí)行的。

語法

function 函數(shù)名(參數(shù)1, 參數(shù)2, 參數(shù)3 ……) {

??? 代碼/語句;

??? return 返回值;

}

PHP的函數(shù)不一定都要明確保留return語句,如果沒有return,函數(shù)會自動返回null

PHP 函數(shù)準(zhǔn)則:

·???????? 函數(shù)的名稱應(yīng)該提示出它的功能

·???????? 函數(shù)名稱以字母或下劃線開頭(不能以數(shù)字開頭)

實例

一個簡單的函數(shù),在其被調(diào)用時能輸出我的名稱:

<html>
 <body>
 <?php
 function writeName()
 {
 echo "Kai Jim Refsnes";
 }
 echo "My name is ";
 writeName();
 ?>
 </body>
 </html>

?

PHP 函數(shù) - 添加參數(shù)

為了給函數(shù)添加更多的功能,我們可以添加參數(shù)。參數(shù)類似變量。

參數(shù)就在函數(shù)名稱后面有一個括號內(nèi)指定。

實例 1

下面的實例將輸出不同的名字,但姓是相同的:

<html>
 <body>
 <?php
 function writeName($fname)
 {
 echo $fname . " Refsnes.<br>";
 }
 echo "My name is ";
 writeName("Kai Jim");
 echo "My sister's name is ";
 writeName("Hege");
 echo "My brother's name is ";
 writeName("Stale");
 ?>
 
 </body>
 </html>


實例 2

下面的函數(shù)有兩個參數(shù):

<html>
 <body>
 <?php
 function writeName($fname,$punctuation)
 {
 echo $fname . " Refsnes" . $punctuation . "<br>";
 }
 echo "My name is ";
 writeName("Kai Jim",".");
 echo "My sister's name is ";
 writeName("Hege","!");
 echo "My brother's name is ";
 writeName("St?le","?");
 ?>
 </body>
 </html>


PHP 函數(shù) - 返回值

如需讓函數(shù)返回一個值,請使用 return 語句。

實例

<html>
 <body>
 <?php
 function add($x,$y)
 {
 $total=$x+$y;
 return $total;
 }
 echo "1 + 16 = " . add(1,16);
 ?>
 </body>
 </html>

?

自定義函數(shù)

我們之前調(diào)用的都是PHP內(nèi)置的函數(shù)。但是,編程語言真正的功能是通過創(chuàng)建自己的函數(shù)來實現(xiàn)的

PHP提供的函數(shù)大多是基礎(chǔ)的功能,譬如操作數(shù)組、訪問數(shù)據(jù)庫、讀寫文件等

但是,現(xiàn)實項目中,PHP函數(shù)是無法滿足我們的需求的,我們找不到可以用來處理合同的函數(shù)、沒有計算出勤率的函數(shù)、沒有打印數(shù)據(jù)表格的函數(shù)

幸運的是,我們并不只局限于PHP內(nèi)置函數(shù),我們可以編寫自己的函數(shù)來完成任何任務(wù),這就是自定義函數(shù)??梢栽谧远x函數(shù)中使用PHP的內(nèi)置函數(shù),下面我們來了解函數(shù)的基本結(jié)構(gòu).

?

?

一次函數(shù)

在計算機中,函數(shù)最早就是用來模擬各種數(shù)學(xué)函數(shù)的,看下下面的代碼

function?linear($x)?{
? ? $k?=?5;
? ? $b?=?3;
? ? $y?=?$k?*?$x?+?$b;
? ? return?$y;
}

$value?=?3;
echo?linear($value);

該函數(shù)可以求解一次方程

?

??????? 函數(shù)是個黑盒,linear內(nèi)部的任何變量在外部都無法訪問

??????? 同樣,函數(shù)內(nèi)部也無法訪問外部的變量

??????? 外部傳遞數(shù)據(jù)給函數(shù)使用參數(shù)

??????? 函數(shù)返回數(shù)據(jù)給外部使用返回值

?

函數(shù)的默認值

回顧函數(shù)的語法,只要稍作修改,給第二個參數(shù)后面加上等號,并且賦值,那么參數(shù)2就有了默認值,函數(shù)調(diào)用時只需要傳遞一個參數(shù)

function 函數(shù)名(參數(shù)1, 參數(shù)2 = 1) {

???????? 代碼/語句;

???????? return 返回值;

}

函數(shù)名(1);此時函數(shù)體內(nèi)參數(shù)2的值是1(默認值)

函數(shù)名(1,2);此時函數(shù)體內(nèi)參數(shù)2的值是2(傳遞的值)

?

?

默認值的作用

在實際的開發(fā)中,我們經(jīng)常用到它,為什么?

假設(shè)有一個系統(tǒng)函數(shù),已經(jīng)使用了很久,到處都有調(diào)用它的地方,如果需要添加新的邏輯,很有可能需要給它添加一個新的參數(shù)

如果添加了新參數(shù),這時函數(shù)的定義改變了,我們需要找到每個調(diào)用的地方去修改并增加這個參數(shù)

如果給個默認值呢?默認值用來控制關(guān)閉新的邏輯,這樣原先的代碼不用做任何修改也不會執(zhí)行到新的邏輯,而新的代碼,可以顯示的指定參數(shù)打開新的邏輯?


繼續(xù)學(xué)習(xí)
||
<html> <body> <?php function add($x,$y) { $total=$x+$y; return $total; } echo "1 + 16 = " . add(1,16); ?> </body> </html>
提交重置代碼