直接上代码了:
, d$ c; {. i) d- <?php7 `8 G! v* H4 E! o
- $test1 = function($value)
1 ^4 _. ^7 v' r+ Y! X% L1 R8 Z% l - {' x* u$ ^3 E; |
- echo $value;" @+ J: L( Q; Q
- };
6 \+ R! P% p$ p @; j1 x, I
) F' P# ~- f7 a% m- $test1('HelloWorld');. }) ]2 ^3 i! x, j+ v) y/ C& \0 ]& [
- ?>
复制代码 ) ~! I/ K5 O( y% J
$ A* X; J3 V7 H3 w- t5 Q
不懂你们有没有一种感觉,看见了js?近视的我,看到了function 就以为js… 好了,你看看最开始,是不是一个test1变量右边一个赋值符号,然后赋值符号(=号)的右边是一个函数?这个函数接收一个参数value,那么这个就是匿名函数,我们使用的时候直接用test1就OK了。 我们函数里面的内容是输出我们参数,我们使用test1传入参数‘HelloWorld’我们运行以下,发现输出了HelloWrold 如果我们要使用这个匿名函数之外的变量,如以下代码,我们要使用use语言结构:
4 e- w9 g4 C# Y# {7 l. v1 \8 U- <?php4 v! g5 n! I3 o4 q8 e
- $n=1;/ F% `5 S3 S0 O6 R: \
- $test1 = function($value)use ($n)
" |& R: t3 C. K. { - {
8 E$ k$ |' V/ @. O+ m - echo $value.' and '.$n;
5 n1 W% E* H' n - };
1 c! v) c: F7 [# O9 M' f& Y6 I: q - # a% X5 w& I3 [2 L$ r, U
- $test1('HelloWorld');
+ U# j' L/ J% R* o( P* T - ?>
复制代码
v6 {! Z/ y" m7 Z+ [5 j9 e' q- S! h* J5 t- V9 ~7 _2 V& ? {5 d3 {& X5 D
我们的n变量是在function的外部,如果我们要在function的内部使用这个变量的话我们需要使用use结构,就是在function后面传参括号的后面使用一个use然后一个圆括号里面加上我们要使用的变量$n,那么这时我们在函数里面输出这个变量,将不会报错。 ㄟ(◑‿◐ )ㄏ
8 J u9 t7 v0 i$ O6 ]0 T8 q4 k& l233…
/ J' v% |- i" ]2 M A7 ] |