Wie lade ich benutzerdefinierte Klassen automatisch in Laravel 5.2?
巴扎黑
巴扎黑 2017-05-16 16:49:26
0
2
496

1. Definieren Sie eine Klasse QrCode.php unter appLibraires

<?php
/**
 * Created by PhpStorm.
 * User: AIMPER
 * Date: 2016/11/30
 * Time: 10:13
 */

namespace App\Libaries;
use Endroid\QrCode;
use Illuminate\Support\Facades\DB;

class QrCode{

    public static function generateQrCode($type = null, $id = null){
        $code = random_string(32,true);
        $create_date = time();
        $expires = 0;

        $qrcodeType = DB::table('qrcode_type')->where('id','=',$type)->select('code','params')-first();
        return $qrcodeType;

    }

}

2. Rufen Sie die Methode dieser Klasse auf

...
use App\Libaries\QrCode;
class TestController extends Controller{
    public function index(){
        QrCode::generateQrCode(11,1);
    }
}

3. Fehlermeldung

ReflectionException in Route.php line 286:
Class App\Libaries\QrCode does not exist

4. Lösungsversuch
Ich habe Composer Dump-Autoload verwendet, aber die Klasse kann immer noch nicht geladen werden. Wie kann ich benutzerdefinierte Klassen automatisch in das Projekt laden?

巴扎黑
巴扎黑

Antworte allen(2)
迷茫

在路由中通过依赖注入获取的类,需要注册至容器。

滿天的星座

查看下项目根目录下的composer.json文件的设置。

"autoload": {
    "files":[
        "app/helpers.php"
    ],
    "psr-4": {
        "App\\": "app/"
    }
},

而且报错发生在路由定义环节,需要看看route.php的设置

Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage