Zitat von
Mark Knochen
ich bin schon eine Weile raus und suche Hilfe, wie ich in einer "blanken" Datei das Contao Framework initialisieren kann und die DB Klasse für die Verwendung laden kann.
@Mark Knochen, @scrat das Contao Framework musst du nicht initialisieren, um auf die Datenbank zugreifen zu können. In einem Controller, der als Service registriert ist, kannst du dir die Datenbankverbindung per Dependency Injection holen. In der App würde das zB so aussehen:
PHP-Code:
# config/services.yaml
services:
_defaults:
autowire: true
autoconfigure: true
App\:
resource: ../src
App\Controller\:
resource: ../src/Controller
public: true
PHP-Code:
# config/routes.yaml
app.controller:
resource: ../src/Controller
type: annotation
PHP-Code:
// src/Controller/ExampleController.php
namespace App\Controller;
use Doctrine\DBAL\Connection;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
/**
* @Route("/example", name=ExampleController::class)
*/
class ExampleController
{
private $db;
public function __construct(Connection $db)
{
$this->db = $db;
}
public function __invoke(Request $request): Response
{
$this->db->executeQuery(…);
return new Response('Hello World!');
}
}