php - PHP 函数可以返回对静态对象的引用吗?

标签 php static

假设我有一个静态对象:

class everything{
    public static function must(){
        return "go!";
    }
}

当我这样做时:

echo everything::must();

我收到回复:

go!

这是预期的行为。


现在,出于我自己的原因(遗留代码支持),我希望能够从函数调用的返回中调用该静态对象,语法类似于:

print accessorFunction()::must(); // Or something as close to it as possible

function accessorFunction(){
    returns (reference to)everything; // Or something as close to it as possible
}

我希望我已经把问题说清楚了。

谢谢。

最佳答案

不可能以这种方式调用静态方法:

print accessorFunction()::must();

但有可能

$class_name = accessorFunction();
print $class_name::must();

文档 - http://www.php.net/manual/en/language.oop5.paamayim-nekudotayim.php

关于php - PHP 函数可以返回对静态对象的引用吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19125509/

相关文章:

java - OpenCV Android 上的静态初始化

swift - 关于在 Swift 中重写类属性的困惑

c - 使用函数指针的静态结构初始化

php - 警告 : mysql_query(): 3 is not a valid MySQL-Link resource

php - 如何通过单击按钮从服务器下载文件

php - 如何解决 Php 7 找不到 Sqlite3?

java - 使用静态方法执行文件 I/O 时出现 NotSerializableException

双重嵌套模板类中的 c++ static int def 因 clang++ 和 g++ 而失败

java - XSLT 处理巨大的 XML 文件(几乎 5 GB)

php - 如何在 Symfony3 中初始化 JMS 序列化程序?