如何使用控制器的私有属性作为静态属性?

所以,这个问题几乎解释了我想要什么。这是我正在做的最小代码。


class AuthorizeController extends Controller

{

    private $aNetEnvironment;


    /**

     * Create a new controller instance.

     *

     * @return void

     */

    public function __construct()

    {

        $this->aNetEnvironment = env('ANetEnvironment');

    }


    public function setEnvironment()

    {

        $controller = new AnetController\GetCustomerProfileController($request);

        // $this->aNetEnvironment = SANDBOX

        $response = $controller->executeWithApiResponse( 

            \net\authorize\api\constants\ANetEnvironment::$this->aNetEnvironment 

        ); 

    }

}

搜索 stackoverflow 我有两个选项,都尝试过但都没有运气。


尝试,{$this->aNetEnvironment}给


语法错误,意外的 ')',期待 '('


尝试,$$this->aNetEnvironment给


类 App\Http\Controllers\AuthorizeController 的对象无法转换为字符串


编辑:


尝试,${$this->aNetEnvironment}给


访问未声明的静态属性:net\authorize\api\constants\ANetEnvironment::$SANDBOX


还有其他选择吗?


哈士奇WWW
浏览 131回答 2
2回答

慕神8447489

要以这种方式使用类属性作为变量变量,您需要以 a 开头$并将属性包装在{}eg 中,${$this->property}以便您应该能够在控制器中使用以下内容:\net\authorize\api\constants\ANetEnvironment::${$this->aNetEnvironment}
打开App,查看更多内容
随时随地看视频慕课网APP