php – 不能访问self ::当没有类范围是活动的

前端之家收集整理的这篇文章主要介绍了php – 不能访问self ::当没有类范围是活动的前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试使用一个公共静态函数中的 PHP函数,所以(我已经缩短了一点):
class MyClass {

public static function first_function() {

    function inside_this() {    
            $some_var = self::second_function(); // doesnt work inside this function
    }               

    // other code here...

} // End first_function

protected static function second_function() { 

    // do stuff

} // End second_function

} // End class PayPalDimesale

那是当我收到错误“无法访问self ::当没有类范围是活动的”.

如果我在inside_this函数之外调用second_function,它可以正常工作:

class MyClass {

public static function first_function() {

    function inside_this() {    
            // some stuff here  
    }               

    $some_var = self::second_function(); // this works

} // End first_function

protected static function second_function() { 

    // do stuff

} // End second_function

} // End class PayPalDimesale

我需要做什么才能从inside_this函数中使用second_function?

这是因为PHP中的所有函数都具有全局范围 – 即使它们被定义在内部,也可以在函数之外调用,反之亦然.

所以你必须做:

function inside_this() {    
   $some_var = MyClass::second_function(); 
 }
原文链接:https://www.f2er.com/php/131810.html

猜你在找的PHP相关文章