首页 > 解决方案 > 访问同一控制器中其他函数中定义的函数中的变量 - Laravel

问题描述

我正在使用社交名流并尝试访问已在同一控制器中的 redirectToProvider() 中定义的 handleProviderCallback() 中的变量。就这么简单。但它不起作用,我尝试在变量之前添加 global 关键字,但 Laravel 抛出错误。下面是一个示例代码表示。

class LoginController extends Controller
{
    public function redirectToProvider()
        {

        // defined a variable with some value - this value is dynamic changes every time a user logs in.

        $someVariable= 'some value';

        }


    public function handleProviderCallback()
        {

        //trying to access someVariable defined in the above function.


        }

}

任何建议都会有所帮助。谢谢

标签: phplaravelfunctionvariablesscope

解决方案


这是你需要做的。

class LoginController extends Controller
    {
            // You can also create this as public
            private someVariable;

            public function redirectToProvider()
            {
                Assign value here
                $this->someVariable= 'some value';

             }


            public function handleProviderCallback()
            {
                 //Now you can access $this->someVariable


             }

        }

推荐阅读