猿问

如何访问类的静态属性

我看过堆栈溢出的答案,包括这个,但没有任何效果,我觉得它很简单!我不明白。


我有我的文件 /app/C/V1/RM.php:


<?php


namespace App\C\V1;


class RM{

    public static $info = [

        key => 'rm',

        name => 'RM Title Here',

        logo => '',

        status => 'alpha'

    ];

}

我正在尝试$info像这样进入 Laravel 控制器:


<?php


namespace App\Http\Controllers;


use Illuminate\Http\Request;


use App\C\V1;


class CourierApiV1Controller extends Controller

{    

    public function listC(Request $request) {

        $info = V1\RM::info;

        return response()->json([

            'info' => $info

        ]);

    }

}

为什么这不起作用?如何获得静态属性?


翻过高山走不出你
浏览 140回答 2
2回答

忽然笑

您必须对数组索引使用single quoteOR double&nbsp; quote,默认情况下,它们被视为 const,这就是为什么您会收到错误class RM{&nbsp;public static $info = [&nbsp; &nbsp; 'key' => 'rm',&nbsp; &nbsp; 'name' => 'RM Title Here',&nbsp; &nbsp; 'logo' => '',&nbsp; &nbsp; 'status' => 'alpha'&nbsp;];}

HUH函数

您需要添加 $ 来调用静态属性RM::$info
随时随地看视频慕课网APP
我要回答