相关疑难解决方法(0)

通过$ var :: $ reference访问静态变量

我试图通过使用变量类名访问类中的静态变量.我知道为了访问类中的函数,您使用call_user_func():

class foo {
    function bar() { echo 'hi'; }
} 
$class = 'foo';
call_user_func(array($class, 'bar')); // prints hi
Run Code Online (Sandbox Code Playgroud)

但是,当尝试访问类中的静态变量时,这不起作用:

class foo {
    public static $bar = 'hi';
} 
$class = "foo";
call_user_func(array($class, 'bar')); // nothing
echo $foo::$bar; // invalid
Run Code Online (Sandbox Code Playgroud)

我如何得到这个变量?它甚至可能吗?我有一种不好的感觉,这只适用于PHP 5.3,我正在运行PHP 5.2.6.

php

28
推荐指数
3
解决办法
3万
查看次数

如何在PHP中动态访问类const?

假设我有一个这样的课程:

class Order {

    const STATUS_INITIALIZED = 'initialized';
    const STATUS_ORDERED = 'ordered';
}
Run Code Online (Sandbox Code Playgroud)

而且我想像这样抓住常数:

$status = $_GET['status']; // ?status=STATUS_ORDERED
Run Code Online (Sandbox Code Playgroud)

有没有办法访问常量的值,给定常量的名称作为字符串?

我试过了:

Order::$status
Order::$$status
Run Code Online (Sandbox Code Playgroud)

php get constants

5
推荐指数
1
解决办法
2768
查看次数

标签 统计

php ×2

constants ×1

get ×1