cncml手绘网

标题: php中的匿名函数简单使用 [打印本页]

作者: admin    时间: 2018-6-21 21:29
标题: php中的匿名函数简单使用

直接上代码了:


; J) y* q  q) |. w/ ?# d
  1. <?php* f; J+ {6 ]+ Q
  2. $test1 = function($value)
    , x% R! q4 {3 Y( a$ [7 s& e0 [
  3. {
    4 [+ Q& z4 v& s$ |# y" F
  4. echo $value;
    * F+ a) r4 T* h4 h/ H
  5. };% I' z8 Q+ V, w- @/ v' @+ z) L8 e# u
  6. * Q6 X; V1 y6 R, T" z+ n- ~4 t0 D- L
  7. $test1('HelloWorld');
    # R* T- T. m8 i& v! G# y6 p
  8. ?>
复制代码

. H) ?5 l- n: U9 N3 v, t$ N2 c, q
; q* R8 }& S5 E6 q$ D+ ?; E' Q( j

不懂你们有没有一种感觉,看见了js?近视的我,看到了function 就以为js…

好了,你看看最开始,是不是一个test1变量右边一个赋值符号,然后赋值符号(=号)的右边是一个函数?这个函数接收一个参数value,那么这个就是匿名函数,我们使用的时候直接用test1就OK了。

我们函数里面的内容是输出我们参数,我们使用test1传入参数‘HelloWorld’我们运行以下,发现输出了HelloWrold

如果我们要使用这个匿名函数之外的变量,如以下代码,我们要使用use语言结构:


& s, G$ R) g! W6 v9 M; X
  1. <?php
    3 d/ }. M4 W9 I2 t
  2. $n=1;& Z) Y9 j# O, z! O
  3. $test1 = function($value)use ($n)
    ( Q5 Y  q5 c6 K
  4. {
    4 E' ~* I! z" L$ {* A' Q( T% d
  5. echo $value.' and '.$n;9 L6 B7 a6 ~7 Y- f9 W6 t
  6. };- H6 A% ]+ @! [7 @/ U( _

  7. 5 O  z  |9 ~- U/ b1 M6 ?  c( I
  8. $test1('HelloWorld');
    , U# s6 v/ M8 ~9 s2 B' B
  9. ?>
复制代码
" j: N& l. r1 s5 _

8 b% g$ n# d' J& M; S6 ]1 s& z

我们的n变量是在function的外部,如果我们要在function的内部使用这个变量的话我们需要使用use结构,就是在function后面传参括号的后面使用一个use然后一个圆括号里面加上我们要使用的变量$n,那么这时我们在函数里面输出这个变量,将不会报错。

ㄟ(◑‿◐ )ㄏ ! Z+ H; _) }/ T' Q$ i6 p3 ~
233…


1 }" Q+ X" |! [9 a% H! V8 y( u: f




欢迎光临 cncml手绘网 (http://bbs.cncml.com/) Powered by Discuz! X3.2