首页 > 解决方案 > 如何访问APP目录外的数据库

问题描述

我的 Laravel 公共文件夹中有一个名为 login.php 的 php 文件。我想从我的 mySql 数据库中获取所有使用数据。

require_once __DIR__.'/../vendor/autoload.php';
$app = require __DIR__ . '../../bootstrap/app.php';
$app->boot();
$user=new \App\User();
dd(user::all());//get all user details.

当我运行它时,它返回一条错误消息:

Fatal error: Uncaught Error: Call to a member function connection() on null in C:\inetpub\wwwroot\blog2\vendor\laravel\framework\src\Illuminate\Database\Eloquent\Model.php:1138 Stack trace: #0 C:\inetpub\wwwroot\blog2\vendor\laravel\framework\src\Illuminate\Database\Eloquent\Model.php(1104): Illuminate\Database\Eloquent\Model::resolveConnection(NULL) #1 C:\inetpub\wwwroot\blog2\vendor\laravel\framework\src\Illuminate\Database\Eloquent\Model.php(936): Illuminate\Database\Eloquent\Model->getConnection() #2 C:\inetpub\wwwroot\blog2\vendor\laravel\framework\src\Illuminate\Database\Eloquent\Model.php(847): Illuminate\Database\Eloquent\Model->newBaseQueryBuilder() #3 C:\inetpub\wwwroot\blog2\vendor\laravel\framework\src\Illuminate\Database\Eloquent\Model.php(885): Illuminate\Database\Eloquent\Model->newModelQuery() #4 C:\inetpub\wwwroot\blog2\vendor\laravel\framework\src\Illuminate\Database\Eloquent\Model.php(836): Illuminate\Database\Eloquent\Model->newQueryWithoutScopes() #5 C:\inetpub\wwwroot\blog2\vendor\laravel\framework\s in C:\inetpub\wwwroot\blog2\vendor\laravel\framework\src\Illuminate\Database\Eloquent\Model.php on line 1138

如何在这里获取所有用户数据。

标签: phplaravel-5mysqlieloquentsingle-sign-on

解决方案


Laravel 5.6 中的工作解决方案

<?php
require __DIR__.'/../vendor/autoload.php';
$app = require_once __DIR__.'/../bootstrap/app.php';
$kernel = $app->make(Illuminate\Contracts\Http\Kernel::class);
$kernel->handle(Illuminate\Http\Request::capture());

$user = \App\User::all()->toArray();

var_dump($user);

推荐阅读