国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術(shù)文章
文章詳情頁

PHP基礎(chǔ)之函數(shù)2——函數(shù)參數(shù)

瀏覽:17日期:2022-09-14 16:33:55

通過參數(shù)列表可以傳遞信息到函數(shù),即以逗號(hào)作為分隔符的表達(dá)式列表。參數(shù)是從左向右求值的。

PHP 支持按值傳遞參數(shù)(默認(rèn)),通過引用傳遞參數(shù)以及默認(rèn)參數(shù)。也支持可變長度參數(shù)列表,更多信息參見?func_num_args(),?func_get_arg()?以及?func_get_args()。

Example #1 向函數(shù)傳遞數(shù)組

<?php function?takes_array($input) ??? echo?'$input[0]?+?$input[1]?=?',?$input[0]+$input[1];}?>通過引用傳遞參數(shù)

默認(rèn)情況下,函數(shù)參數(shù)通過值傳遞(因而即使在函數(shù)內(nèi)部改變參數(shù)的值,它并不會(huì)改變函數(shù)外部的值)。如果希望允許函數(shù)修改它的參數(shù)值,必須通過引用傳遞參數(shù)。 如果想要函數(shù)的一個(gè)參數(shù)總是通過引用傳遞,可以在函數(shù)定義中該參數(shù)的前面加上符號(hào) &:

Example #2 用引用傳遞函數(shù)參數(shù)

<?phpfunction?add_some_extra(&$string){????$string?.=?’and?something?extra.’;}$str?=?’This?is?a?string,?’;add_some_extra($str);echo?$str;????//?outputs?’This?is?a?string,?and?something?extra.’?>默認(rèn)參數(shù)的值

函數(shù)可以定義 C++ 風(fēng)格的標(biāo)量參數(shù)默認(rèn)值,如下所示:

Example #3 在函數(shù)中使用默認(rèn)參數(shù)

<?phpfunction?makecoffee($type?=?'cappuccino'){????return?'Making?a?cup?of?$type.n';}echo?makecoffee();echo?makecoffee(null);echo?makecoffee('espresso');?>以上例程會(huì)輸出:

Making a cup of cappuccino.Making a cup of .Making a cup of espresso.

PHP 還允許使用數(shù)組?array?和特殊類型?NULL?作為默認(rèn)參數(shù),例如:

Example #4 使用非標(biāo)量類型作為默認(rèn)參數(shù)

<?phpfunction?makecoffee($types?=?array('cappuccino'),?$coffeeMaker?=?NULL){???$device?=?is_null($coffeeMaker)???'hands'?:?$coffeeMaker;???return?'Making?a?cup?of?'.join(',?',?$types).'?with?$device.n';}echo?makecoffee();echo?makecoffee(array('cappuccino',?'lavazza'),?'teapot');?>

默認(rèn)值必須是常量表達(dá)式,不能是諸如變量,類成員,或者函數(shù)調(diào)用等。

注意當(dāng)使用默認(rèn)參數(shù)時(shí),任何默認(rèn)參數(shù)必須放在任何非默認(rèn)參數(shù)的右側(cè);否則,函數(shù)將不會(huì)按照預(yù)期的情況工作。考慮下面的代碼片斷:

Example #5 函數(shù)默認(rèn)參數(shù)的不正確用法

<?phpfunction?makeyogurt($type?=?'acidophilus',?$flavour){????return?'Making?a?bowl?of?$type?$flavour.n';}echo?makeyogurt('raspberry');???//?won’t?work?as?expected?>

以上例程會(huì)輸出:

Warning: Missing argument 2 in call to makeyogurt() in /usr/local/etc/httpd/htdocs/phptest/functest.html on line 41Making a bowl of raspberry .

現(xiàn)在,比較上面的例子和這個(gè)例子:

Example #6 函數(shù)默認(rèn)參數(shù)正確的用法

<?phpfunction?makeyogurt($flavour,?$type?=?'acidophilus'){????return?'Making?a?bowl?of?$type?$flavour.n';}echo?makeyogurt('raspberry');???//?works?as?expected?>

以上例程會(huì)輸出:

Making a bowl of acidophilus raspberry.

Note:?自 PHP 5 起,默認(rèn)值可以通過引用傳遞。

可變數(shù)量的參數(shù)列表

PHP 在用戶自定義函數(shù)中支持可變數(shù)量的參數(shù)列表。其實(shí)很簡單,只需使用?func_num_args(),?func_get_arg(),和?func_get_args()?函數(shù)即可。

可變參數(shù)并不需要特別的語法,參數(shù)列表仍按函數(shù)定義的方式傳遞給函數(shù),并按通常的方式使用這些參數(shù)。

標(biāo)簽: PHP
相關(guān)文章:
主站蜘蛛池模板: 波多野结衣中文无毒不卡 | 视频三区精品中文字幕 | 中文一区二区在线观看 | 中国老妇色xxxxx | 一级一片免费播放 | 久久国产精品1区2区3区网页 | 视频一区在线观看 | 国产成人精品曰本亚洲77美色 | 三级国产在线观看 | 日韩专区亚洲精品欧美专区 | 久久久91精品国产一区二区 | 毛片免费在线观看 | 日韩黄色视屏 | 日本伊人精品一区二区三区 | 国产精品一级香蕉一区 | 国产精品一区久久精品 | 亚洲视频在线观看网站 | 综合色久七七综合七七蜜芽 | 国产精品第五页 | 欧美日韩一区二区三在线 | 日韩99在线 | 深夜福利国产福利视频 | 男人天堂1024 | 一区二区三区在线视频观看 | 免费一区二区三区四区五区 | 欧美 日韩 国产 成人 在线观看 | 成人在线观看不卡 | 好看欧美视频高清va | 在线看欧美日韩中文字幕 | 新久草视频 | 久久精品中文字幕首页 | 九草视频在线 | 本道久久综合88全国最大色 | 国产亚洲福利 | 日本三级网站在线观看 | 国产黄色一级毛片 | 一级片美国| 日韩成人精品日本亚洲 | 欧美一区二区视频 | 成人交性视频免费看 | 午夜剧场成年 |