Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Laravel 5.3自定义类_Laravel_Laravel 5.2 - Fatal编程技术网

Laravel 5.3自定义类

Laravel 5.3自定义类,laravel,laravel-5.2,Laravel,Laravel 5.2,当我在控制器构造中调用时,在laravel中创建一个自定义类 Auth::user()不返回任何数据 当从函数中调用时,它就是工作 类别代码 <?php namespace App\Libraries; use App\User; use Auth; use Illuminate\Support\Facades\DB; use App\Friends; class AppLibrarie { private static $friends_ids = array();

当我在控制器构造中调用时,在
laravel
中创建一个自定义类 Auth::user()不返回任何数据

当从函数中调用时,它就是工作

类别代码

<?php namespace App\Libraries;



use App\User;
use Auth;
use Illuminate\Support\Facades\DB;
use App\Friends;
class AppLibrarie
{
   private static $friends_ids = array();
    public function __construct()
    {
        self::$friends_ids=Auth::user();
    }
   public function getfriends(){
  return self::$friends_ids;
}
}

访问经过身份验证的用户会话在Laravel 5.3中已被弃用。以下是升级指南中的段落

在以前版本的Laravel中,您可以访问会话变量或控制器构造函数中经过身份验证的用户。这从来不是该框架的明确特征。在Laravel5.3中,由于中间件尚未运行,您无法访问控制器构造函数中的会话或已验证用户

或者,您可以直接在控制器的构造函数中定义基于闭包的中间件。在使用此功能之前,请确保您的应用程序正在运行Laravel 5.3.4或更高版本:

如果要升级

Auth::user()总是返回类型为user的模型,这是一个对象,则需要重新考虑一下身份验证结构。您正在将该对象放入数组中。这是错误的,这就是为什么你没有得到任何数据。改为使用Auth::user()->toArray();
<?php

namespace App\Http\Controllers;

use App\Libraries\AppLibrarie;
use Illuminate\Http\Request;

use App\Http\Requests;

class LiveController extends Controller
{
    protected $lib;
    public function __construct(AppLibrarie $appLibrarie)
    {
        $this->lib = $appLibrarie;
    }
    public function search(Request $request){
         return response()->json($this->lib->searchdata($request->get('query')));
    }
}