這周剛上完web課,老師這節課講php中的函式,自己稍微做了梳理,這次簡單的總結希望了以讓自己加深影響的同時幫助更多人學習
php中的函式和其他函式一樣,有系統的自帶函式也有自定義的函式,系統自帶函式較多,大概有上萬個,後序還會詳解,但是並不是讓大家掌握所有,也沒有必要掌握全部,作為乙個學計算機的學生應該學會在遇到不會的問題時可以盡快找到如何解決和突破問題的出口,我認為這個能力是很有必要的。
這裡我只做自定義函式的相關介紹。
1. 無返會值函式
<?php
// 無返回值函式(自定義函式)
function
myprint($x
)myprint(3
);myprint(5
);?>
執行結果:2.有返回值的函式
<?php
// 有返回值函式(自定義函式)
function
getx($x
)$a=getx(3
);print($a
);?>
執行結果:3.引數的值傳遞
<?php
// 引數的值傳遞(自定義函式)
function
test($x
,$y)$a
=test(3
,5);
print($a
);// 以下報錯,引數值沒傳夠,
//但是如果引數多傳值,不會報錯!下文6有例$a=
test(3
);print($a
);?>
執行結果:
4.引數的引用傳遞
<?php $x=
3;$y=
&$x;print
("x=".$x
.",y=".$y
."\n");$y
=9;print
("x=".$x
.",y=".$y
."\n")
;function
swap(&
$x,&$y
)$a=2
;$b=5
;print
("a=".$a
.",b=".$b
."\n")
;// 函式傳引用的時候要傳變數即$b
swap($a
,$b);
print
("a=".$a
.",b=".$b
."\n")
;?>
執行結果:
5.預設引數的使用
<?php
function
test($x
,$y=1
)$a=test(3
,6);
print($a
."\n")
;// 以下不報錯,引數值沒傳夠,但是因為第二個引數已經有預設值$a=
test(3
);print($a
);?>
執行結果:
6.函式指標的使用(同c語言一樣,php 也有函式指標)
<?php
function
test1()
function
test2()
function
test3($x
)// 用乙個變數分別呼叫了不同的函式
$var
="test1"
;$var()
;$var
="test2"
;// 引數少了會出錯,但是多給引數會出錯
$var(5
);$var
="test3"
;$var(5
);?>
執行結果:
7.函式的遞迴和巢狀(此處遞迴與其他程式語言一樣有相同的思想,只是書寫格式有所不同)——下文**實現遞迴的乙個簡單例項(斐波那契數列),小碼們可以自己嘗試用php 解決典型的遞迴演算法——漢諾塔(後續更新漢諾塔)
<?php
// 斐波拉契數列
function
fac($n)
for($i=
0;$i<20;
$i++
)print
(fac($i
)."\n");
?>
執行結果:8.全域性變數和區域性變數(內部變數和外部變數)
<?php $x=
3;// 函式外的變數對函式內的變數是沒有影響的
function
test()
test()
;print
("x=".$x
."\n")
;?>
執行結果:
<?php $x=
3;function
test()
test()
;print
("x=".$x
."\n")
;?>
執行結果:
9.動態變數和靜態變數
<?php
function
test()
for($i=
0;$i<10;
$i++
)test()
;?>
執行結果:
<?php
function
test()
for($i=
0;$i<10;
$i++
)test()
;?>
執行結果:希望對大家對php的學習有所幫助,若文中有錯誤地方,還請小碼們指出,定加以改正。最後祝大家學習順利。 PHP4新函式集錦
這些函式可以讓你控制你的指令碼輸出的內容.可以用於許多不同的情況,特別是在你的指令碼已經輸出資訊後需要傳送檔案頭新的情況.輸出控制函式不對使用 header 或 setcookie 傳送的檔案頭資訊產生影響,只對那些類似於 echo 和 php 的資料塊有作用.例 1.控制輸出 ob start e...
php 4 魔術常量
line 檔案中的當前行號。echo 這是第 line 行 這是第 9 行 file 檔案的完整路徑和檔名。如果用在被包含檔案中,則返回被包含的檔名。自 php 4.0.2 起,file 總是包含乙個絕對路徑 如果是符號連線,則是解析後的絕對路徑 而在此之前的版本有時會包含乙個相對路徑。echo 該...
PHP4使用者手冊 函式 CURL
本頁面推薦在1024x768分辯率下瀏覽 php 支援libcurl 允許你用不同的協議連線和溝通不同的伺服器 libcurl當前支援http,https,ftp,gopher,telnet,dict,file,和ldap 協議。libcurl同樣支援https證書授權,http post,http...