個人PHP學習筆記(三) 函式

2021-07-02 15:32:51 字數 3291 閱讀 2008

function name (exp1,exp2,...,expn)     //關鍵字+函式名+引數列表

<?php

function hello()

?>

function_name (exp1,exp2,...,expn);

<?php

function

hello

() //先定義在呼叫

hello();

?>

<?php

hello(); //先呼叫再定義

function

hello

()

?>

function

name

(exp1,exp2,...,expn);

//形式引數

function_name (exp1,exp2,...,expn); //實際引數

<?php

function

say($a)

$str='hello';

say($str);

?>

預設引數

<?php

function

say($a='hello')

say(); //呼叫但不傳參會呼叫預設引數

say('hi'); //呼叫並傳參會替換預設引數

?>

<?php

function

add($a,$b,$c=3)

add(1,2);

?>

<?php

function

swap

($a,$b) //用於交換引數的值

$x=4;

$y=8;

swap($x,$y);

echo

"\$x=$x

\$y=$y";

?>

//由此可以看出值傳遞在函式內數值進行了交換,而在函式外,資料卻沒有變化

<?php

function

swap

(&$a,&$b) //用於交換引數的值

$x=4;

$y=8;

swap($x,$y);

echo

"\$x=$x

\$y=$y";

?>

變數的作用域就是變數的有效範圍。

1.全域性變數

<?php

$a=1;

function

read

()

read();

?>

2.區域性變數

<?php

$num=1;

functiona()

functionb()

functionc()

functiond()

a();

b();

c();

d();

echo

"全域性變數:\$num=$num";

?>

//不同函式中可以定義相同名字的變數

<?php

function

read

() //在函式外輸出函式內部變數

read();

echo

"外部輸出函式內變數\$num=$num";

?>

3.靜態變數

<?php

function

add()

add();

add();

add();

?>

<?php

function

add()

echo add(); //使用輸出語句輸出函式的返回值

?>

<?php

function

comp

($a,$b)

else

}$res=comp(5,10);

if($res==1)

else

//使用返回值來判斷

?>

<?php

function

add()

$a=add();

$b=1;

echo

'$a+$b='.($a+$b); //函式返回值賦值

?>

function &name

()val=&function_name

()<?php

function &add

()

$res=add();

$res=10;

$res=add();

$res=&add();

$res=10;

$res=&add(); //$res=&add()相當於$res=&$a,因此改變了函式中的$a的值

?>

variable ();

<?php

function

hello

()

function

hi()

function

how()

$name='hello';

$name();

$name='hi';

$name();

$name='how';

$name();

?>

variable=function

($exp1,$exp2,...,$expn)

;<?php

$name=function

($str)

;$name('marshall');

$str='匿名函式';

$name($str);

?>

<?php

function

my_print

($a)

else

echo

$a." ";

}my_print(2);

?>

PHP學習筆記三 函式

1 格式 funciton 函式名 引數1,引數2,引數3.2 函式命名要求 1 不能以系統函式名或關鍵字重名。2 不能以數字和特殊字元開頭,只能是大小寫英文本母和下劃線開頭。3 不能在函式名中包含空格或特殊字元。3 引數 1 可以自由定義引數的數量,沒有限制。2 帶有初始值的引數,在沒有被賦值的時...

PHP學習筆記之PHP函式(三)

認識php函式 函式引數的傳遞 1.值傳遞 傳值 函式內對引數值的改變不會影響函式外部的值 2.引用傳遞 傳址 有些情況下,可能希望在函式體內對引數的修改在函式體外也能反映 3.預設引數值 可以為引數指定預設值,在沒有提供其他值的情況下,則將預設值自動賦 函式中變數的作用域 1.區域性變數 func...

PHP學習筆記(三) 函式與陣列

1.php函式定義 functionmymethod myvar 函式呼叫 mymethod var 返回值格式相同,使用return關鍵字。2.陣列初始化 states hh yy states 0 yy states array ohio oio var2 value2 line name li...