Home >Backend Development >PHP Tutorial >php 如何引用一个函数名,不是调用?

php 如何引用一个函数名,不是调用?

WBOY
WBOYOriginal
2016-06-06 20:13:43922browse

<code>    class c{
      function f1($parameter){
    
      }
    
      function f2(){
        $f = #如何获得f1的引用?
        $f($input);#为了这个
      }
    }</code>

回复内容:

<code>    class c{
      function f1($parameter){
    
      }
    
      function f2(){
        $f = #如何获得f1的引用?
        $f($input);#为了这个
      }
    }</code>

array($this, 'f1');

也可以用$f = array('c', 'f1');

其实就是个callable类型,callable类型有3种传递方法.
1.传递函数名(函数不等于方法)
2.传递数组,其中第一个元素是一个实例,第二个元素是实例当中的方法
3.传递数组,其中第一个元素是类名,第二个元素是实例当中的静态方法

<code class="php">function f2(){
        call_user_func(['c','f1'],$input);
         
      }</code>
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn