php - laravel 4 中的全局变量

标签 php variables laravel laravel-4 global

我想知道如何做一个全局变量来为我节省几行复制和粘贴这些行。可能将它排列起来并将它们放在一个变量中?我想在其他路由中使用这个变量。

  $providerEmail = Auth::user()->email;
  $providerName = Auth::user()->first_name;
  $providerSurname = Auth::user()->last_name;
  $providerMobile = Auth::user()->mobile;

最佳答案

你可以在 App::before 事件中创建一个全局的 singleton

App::before(function($request)
{
    // Singleton (global) object
    App::singleton('myApp', function(){
        $app = new stdClass;
        if (Auth::check()) {
            // Put your User object in $app->user
            $app->user = Auth::User();
            $app->isLoggedIn = TRUE;
        }
        else {
            $app->isLoggedIn = FALSE;
        }
        return $app;
    });
    $app = App::make('myApp');
    View::share('myApp', $app);
});

在任何 View 中,像使用它一样

if($myApp->isLoggedIn) {
    $myApp->user->email;
    $myApp->user->first_name;
    // ...
}

在任何 Controller 中,你都可以使用

$myApp = App::make('myApp');
if($myApp->isLoggedIn) {
    $myApp->user->email;
    $myApp->user->first_name;
    // ...
}

查看 Application Events .

关于php - laravel 4 中的全局变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19952572/

相关文章:

php - UTF-8 字符未作为 UTF-8 从 PHP 插入到 MySQL 表中

Perl,在循环外使用来自 While 循环内的变量?

php - 命令 (GetRealPath) 不适用于驱动程序 (Gd)

php - Laravel - 如何从文章标题正确生成独特的 slug?

php - 拉维尔 5 : MassAssignmentException in Model. PHP

php - 如何准确验证数据库中的电话号码?

php - Symfony 安全 : Is there an event when a user is authenticated from the session?

php - 从mySQL表中获取信息

java - 使用扫描仪时输入未分配给我的变量

c++ - 存储在全局变量中的数据和存储在堆中的数据有什么区别?