Heim > Backend-Entwicklung > PHP-Tutorial > PHP利用function,use来hook?

PHP利用function,use来hook?

WBOY
Freigeben: 2016-06-06 20:48:10
Original
1043 Leute haben es durchsucht

<code class="lang-php">$hooks = function($meta, $type) use ($inspector, $instance)
            {
                if (isset($meta[$type]))
                {
                    $run = array();

                    foreach ($meta[$type] as $method)
                    {
                        $hookMeta = $inspector->getMethodMeta($method);

                        if (in_array($method, $run) && !empty($hookMeta["@once"]))
                        {
                            continue;
                        }

                        $instance->$method();
                        $run[] = $method;
                    }
                }
            };

            $hooks($methodMeta, "@before");
</code>
Nach dem Login kopieren
Nach dem Login kopieren

这个hooks function里面有一个use是怎么回事?
想不通。。。。望大师告知

回复内容:

<code class="lang-php">$hooks = function($meta, $type) use ($inspector, $instance)
            {
                if (isset($meta[$type]))
                {
                    $run = array();

                    foreach ($meta[$type] as $method)
                    {
                        $hookMeta = $inspector->getMethodMeta($method);

                        if (in_array($method, $run) && !empty($hookMeta["@once"]))
                        {
                            continue;
                        }

                        $instance->$method();
                        $run[] = $method;
                    }
                }
            };

            $hooks($methodMeta, "@before");
</code>
Nach dem Login kopieren
Nach dem Login kopieren

这个hooks function里面有一个use是怎么回事?
想不通。。。。望大师告知

5.3 新增的闭包语法中,use 用来捕捉变量到匿名函数内,见:

http://www.php.net/manual/zh/functions.anonymous.php
http://www.cnblogs.com/melonblog/archive/2013/05/01/3052611.html

Verwandte Etiketten:
php
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage