Wenn man in Laravel oder Lumen eigene Klassen verwenden will, geht das relativ einfach. Aber wenn man es nicht genau richtig macht funktioniert gar nichts mehr.
Angenommen man hat eine Klasse:
<?php
namespace ulrischa;
class Klasse
{
… und will diese in routes/web.php von Laravel verwenden:
<?php
namespace App;
/*
|--------------------------------------------------------------------------
| Application Routes
|--------------------------------------------------------------------------
|
| Here is where you can register all of the routes for an application.
| It is a breeze. Simply tell Lumen the URIs it should respond to
| and give it the Closure to call when that URI is requested.
|
*/
$router->get('/blabla', function(){
$c= new Klasse();
echo $c->aufruf();
});
… wird das nicht klappen. Aber es funktioniert eigentlich genauso wie beim Autoloading mit Composer.
Folgendes ist zu tun:
"autoload": {
"classmap": [
"database/seeds",
"database/factories"
],
"psr-4": {
"App\\": "app/",
"ulrischa\\": "app/ulrischa"
}
},
<?php
namespace App;
use ulrischa\Klasse;
/*
|--------------------------------------------------------------------------
| Application Routes
|--------------------------------------------------------------------------
|
| Here is where you can register all of the routes for an application.
| It is a breeze. Simply tell Lumen the URIs it should respond to
| and give it the Closure to call when that URI is requested.
|
*/
$router->get('/blabla', function(){
$c= new Klasse();
echo $c->aufruf();
});
Wichtig: Nun kein include oder require mehr verwenden um die Datei über php zu laden. Das wird nun von Composer erledigt
Als erster einen Kommentar schreiben.
Schreibe einen Kommentar