PHP 函數(shù)
PHP 的真正威力源自于它的函數(shù)。
在 PHP 中,提供了超過(guò) 700 個(gè)內(nèi)建的函數(shù)。
PHP 函數(shù)
在本教程中,我們將為您講解如何創(chuàng)建自己的函數(shù)。
如需內(nèi)建函數(shù)的參考和實(shí)例,請(qǐng)?jiān)L問(wèn)我們的 PHP 參考手冊(cè)。
創(chuàng)建 PHP 函數(shù)
函數(shù)是一種可以在任何被需要的時(shí)候執(zhí)行的代碼塊。
創(chuàng)建 PHP 函數(shù):
- 所有的函數(shù)都使用關(guān)鍵詞 "function()" 來(lái)開(kāi)始
- 命名函數(shù) - 函數(shù)的名稱應(yīng)該提示出它的功能。函數(shù)名稱以字母或下劃線開(kāi)頭。
- 添加 "{" - 開(kāi)口的花括號(hào)之后的部分是函數(shù)的代碼。
- 插入函數(shù)代碼
- 添加一個(gè) "}" - 函數(shù)通過(guò)關(guān)閉花括號(hào)來(lái)結(jié)束。
例子
一個(gè)簡(jiǎn)單的函數(shù),在其被調(diào)用時(shí)能輸出我的名稱的:
<html>
<body>
<?php
function writeMyName()
{
echo "David Yang";
}
writeMyName();
?>
</body>
</html>
使用 PHP 函數(shù)
現(xiàn)在,我們要在 PHP 腳本中使用這個(gè)函數(shù)了:
<html>
<body>
<?php
function writeMyName()
{
echo "David Yang";
}
echo "Hello world!<br />";
echo "My name is ";
writeMyName();
echo ".<br />That's right, ";
writeMyName();
echo " is my name.";
?>
</body>
</html>
以上代碼的輸出:
Hello world! My name is David Yang. That's right, David Yang is my name.
PHP 函數(shù) - 添加參數(shù)
我們的第一個(gè)函數(shù)是一個(gè)非常簡(jiǎn)單的函數(shù)。它只能輸出一個(gè)靜態(tài)的字符串。
通過(guò)可以添加參數(shù),我們向函數(shù)添加更多的功能。參數(shù)類似一個(gè)變量。
您可能注意到了,函數(shù)名稱后面有一個(gè)括號(hào),比如 writeMyName()。參數(shù)就是在括號(hào)中規(guī)定的。
例子 1
下面的例子講輸出不同的名字,但姓是相同的:
<html>
<body>
<?php
function writeMyName($fname)
{
echo $fname . " Yang.<br />";
}
echo "My name is ";
writeMyName("David");
echo "My name is ";
writeMyName("Mike");
echo "My name is ";
writeMyName("John");
?>
</body>
</html>
上面的代碼的輸出:
My name is David Yang. My name is Mike Yang. My name is John Yang.
例子 2
下面的函數(shù)有兩個(gè)參數(shù):
<html>
<body>
<?php
function writeMyName($fname,$punctuation)
{
echo $fname . " Yang" . $punctuation . "<br />";
}
echo "My name is ";
writeMyName("David",".");
echo "My name is ";
writeMyName("Mike","!");
echo "My name is ";
writeMyName("John","...");
?>
</body>
</html>
上面的代碼的輸出:
My name is David Yang. My name is Mike Yang! My name is John Yang...
PHP 函數(shù) - 返回值
函數(shù)也能用于返回值。
例子
<html>
<body>
<?php
function add($x,$y)
{
$total = $x + $y;
return $total;
}
echo "1 + 16 = " . add(1,16);
?>
</body>
</html>
以上代碼的輸出:
1 + 16 = 17