亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

PHP 函數(shù)

我們?cè)谙惹暗膶W(xué)習(xí)中已經(jīng)使用過大量的函數(shù):var_dump以及非常多的陣列函數(shù),他們的特點(diǎn)是什麼?

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

2. 都有特殊的名稱

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

# 4. 大多數(shù)函數(shù)都會(huì)有回傳值,即使沒有也會(huì)執(zhí)行特定的運(yùn)算

5. 不需要知道函數(shù)內(nèi)部的實(shí)作邏輯

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

函數(shù)名稱必須以字母或底線開頭,後面跟著字母、數(shù)字或底線,另外函數(shù)名稱是大小寫不敏感的

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

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

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

如需查看所有陣列函數(shù)的完整參考手冊(cè)和實(shí)例,請(qǐng)?jiān)煸L我們的?PHP 參考手冊(cè)。

PHP 函數(shù)

我們先前呼叫的都是PHP內(nèi)建的函數(shù),大多是基礎(chǔ)的功能;但是,現(xiàn)實(shí)項(xiàng)目中,是無法滿足我們的需求的。 因此,我們不僅限於PHP內(nèi)建函數(shù),我們可以編寫自己的函數(shù)來完成任何任務(wù)。

在本章中,我們將為您解釋如何建立自己的函數(shù)。

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

函數(shù)是透過呼叫函數(shù)來執(zhí)行的。

你可以在頁面的任何位置呼叫函數(shù)。

建立 PHP 函數(shù)

函數(shù)是透過呼叫函數(shù)來執(zhí)行的。

function 函數(shù)名稱([參數(shù)名稱1[=值1],參數(shù)名稱2[=值2], 參數(shù)名稱n[=值n]])
{?
函數(shù)中的功能體(代碼/語句)?
[return 回傳值]?
}?

##說明:

1. 函數(shù)以function開始

2. function後面接空格,空格後接函數(shù)名稱

3. 函數(shù)名稱與變數(shù)命名規(guī)則基本上一樣,但是不同的是:函數(shù)名稱不區(qū)分大小寫

4. 所謂參數(shù)其實(shí)就是變數(shù)

5. 函數(shù)名稱後接括號(hào),括號(hào)內(nèi)跟參數(shù),參數(shù)全都有[](中括號(hào))括起來了,代表參數(shù)可填可不填

6. 參數(shù)的話,參數(shù)後可以接(=)等號(hào),等號(hào)接預(yù)設(shè)值。參數(shù)值也是用[](中括號(hào))括起來的,代表選填

7. 函數(shù)後的參數(shù)變量,主要功能是把函數(shù)體外的變量值,傳入函數(shù)體內(nèi)來使用,函數(shù)體的變數(shù)和函數(shù)體外的變數(shù)通常是兩個(gè)不同的變數(shù)。

8. 函數(shù)中的特定函數(shù)(功能體)用大括號(hào)括起來,代表這是一個(gè)函數(shù)的功能區(qū)間

9.函數(shù)可以有回傳值也可以沒有回傳值,用[](中括號(hào))括起來的,代表選填。

10. return後接空格,空格後面接回傳值,若有return,return後的程式碼皆不執(zhí)行。

11. 函數(shù)的執(zhí)行沒有順序關(guān)係,可以在定義處之前的位置呼叫

12. 函數(shù)不能被定義兩次,即函數(shù)不能被重載

簡單的實(shí)例:

一個(gè)簡單的函數(shù),在被呼叫時(shí)能輸出我的名稱:

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

輸出:

My name is Kai Jim Refsnes

#PHP 函數(shù)- 新增參數(shù)

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

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

實(shí)例1

下面的實(shí)例會(huì)輸出不同的名字,但姓氏是相同的:

<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>

輸出:

My name is Kai Jim Refsnes.
My sister's name is Hege Refsnes.
My brother's name is Stale Refsnes.

實(shí)例2

#下面的函式有兩個(gè)參數(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>

輸出:

My name is Kai Jim Refsnes.
My sister's name is Hege Refsnes!
My brother's name is St?le Refsnes?

PHP 函數(shù)-傳回值

如需讓函數(shù)傳回一個(gè)值,請(qǐng)使用return 語句。

實(shí)例

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

輸出:

1 + 16 = 17

函數(shù)的預(yù)設(shè)值

回顧函數(shù)的語法,只要稍作修改,給第二個(gè)參數(shù)後面加上等號(hào),並且賦值,那麼參數(shù)2就有了預(yù)設(shè)值, 函數(shù)呼叫時(shí)只需要傳遞一個(gè)參數(shù)1

#function 函數(shù)名稱([參數(shù)1, 參數(shù)2 = 2)
{?
函數(shù)中的功能體(程式碼/語句)?
[return 傳回值]?
##}?

#作用:

假設(shè)有一個(gè)系統(tǒng)函數(shù),已經(jīng)使用了很久,到處都有調(diào)用它的地方,如果需要添加新的邏輯,很有可能需要為它添加一個(gè)新的參數(shù)。 如果新增了新參數(shù),這時(shí)函數(shù)的定義改變了,我們需要找到每個(gè)呼叫的地方去修改並增加這個(gè)參數(shù)。 如果給個(gè)預(yù)設(shè)值呢?預(yù)設(shè)值用來控制關(guān)閉新的邏輯,這樣原先的程式碼不用做任何修改也不會(huì)執(zhí)行到新的邏輯, 而新的程式碼,可以顯示的指定參數(shù)開啟新的邏輯。

實(shí)例

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

由上面的實(shí)例看出,函數(shù)後的參數(shù)如果有預(yù)設(shè)值,預(yù)設(shè)值代表的這個(gè)參數(shù)可以不用傳值進(jìn)去。
如:echo "1 + 10 = " . add(1)中只是傳了一個(gè)值 1 給 $x。


繼續(xù)學(xué)習(xí)
||
<html> <body> <?php function writeName() { echo "Kai Jim Refsnes"; } echo "My name is "; writeName(); ?> </body> </html>
提交重置程式碼