首页 > 解决方案 > PHP 在类的静态方法中调用函数

问题描述

class MainClass {

    public static function myStaticMethod(){
        return myFunction();

        function myFunction(){
            echo 'hello';
        }
    }
}

上面的代码在执行时返回对未定义函数的调用myFunction();

请,关于如何在方法中调用函数的任何想法?

谢谢

标签: php

解决方案


在其他函数中定义函数时,将函数减速移动到尝试使用它之前...

class MainClass
{
  public static function myStaticMethod()
  {
    function myFunction()
    {
      echo 'hello';
    }
    return myFunction();
  }
}

MainClass::myStaticMethod(); // No error thrown

请注意,Cannot redeclare myFunction()除非您管理,否则对 MainClass::myStaticMethod 的重复调用将引发。

否则,将其移出您的班级

function myFunction()
{
  echo 'hello';
}

class MainClass
{
  public static function myStaticMethod()
  {
    return myFunction();
  }
}

推荐阅读