Cómo usar Illuminate Database Query Builder y Eloquent en otro marco con PHP 5.3.x

Hice un par de proyectos con Laravel en el pasado, pero ahora necesito algo muy liviano para un proyecto y comencé a usar Slim, funciona muy bien para lo que necesito y quiero que el gran ORM Eloquent y Query Builder de Laravel no puedan Ir sin él ahora :) Ahora logro que todo funcione con el compositor, usando la información que Taylor mostró en su GitHub, copió su parte del código.

use Illuminate\Database\Capsule\Manager as Capsule;

$capsule = new Capsule;

$capsule->addConnection([
    'driver'    => 'mysql',
    'host'      => 'localhost',
    'database'  => '',
    'username'  => '',
    'password'  => '',
    'charset'   => 'utf8',
    'collation' => 'utf8_unicode_ci',
    'prefix'    => '',
]);

// Set the event dispatcher used by Eloquent models... (optional)
use Illuminate\Events\Dispatcher;
use Illuminate\Container\Container;
$capsule->setEventDispatcher(new Dispatcher(new Container));

// Set the cache manager instance used by connections... (optional)
$capsule->setCacheManager(...);

// Make this Capsule instance available globally via static methods... (optional)
$capsule->setAsGlobal();

// Setup the Eloquent ORM... (optional; unless you've used setEventDispatcher())
$capsule->bootEloquent();

Eso funciona perfectamente bien en mi servidor local (PHP 5.4.x) pero cuando lo coloco en mi servidorPHP 5.3.x, simplemente ya no funciona :( Ahora veo 1 problema ya que no podemos usar una matriz anónima como esta[] pero en su lugar se debe escribir la antigua forma dearray(), eso esta dentro de laaddConnection(array($settings)) Genial, ahora un poco más lejos ... pero luego parece que se estrella dentro$capsule->setEventDispatcher() y no tengo registros en mi servidor (solo lo encontré a través de var_dump () aquí y allá), es solo un NAS y ni siquiera quiero pensar en pasar unas horas solo para descubrir cómo habilitarlo. Pero lo que es gracioso es que tuve un proyecto Laravel 4 trabajando con él ... así que, ¿por qué simplemente construir una parte de él?Illuminate\Database no funciona entonces? También encontré otro código para hacer que el ORM de Eloquent funcione en PHP 5.3.x

$settings = array(
    'driver' => '',
    'host' => '127.0.0.1',
    'database' => '',
    'username' => '',
    'password' => '',
    'charset'   => "utf8",
    'collation' => 'utf8_general_ci',
    'prefix' => ''
);


// Bootstrap Eloquent ORM
$connFactory = new \Illuminate\Database\Connectors\ConnectionFactory(new Illuminate\Container\Container);
$conn = $connFactory->make($settings);
$resolver = new \Illuminate\Database\ConnectionResolver();
$resolver->addConnection('default', $conn);
$resolver->setDefaultConnection('default');
\Illuminate\Database\Eloquent\Model::setConnectionResolver($resolver);

pero si uso este fragmento de código, lo que es bueno con los modelos, por cierto. Necesito usar$conn->table('...')... En lugar de la forma sencilla de la fachada.DB::table(....) que es lo que quiero, ¿por qué es importante que digas? Bueno, y si quiero convertir a Laravel en el futuro ... Tendría que cambiar todas las$conn-> aDB:: así que preferiría hacerlo bien la primera vez. Si alguien sabe cómo crear Fachada en la segunda parte del código, yo también estaría feliz ... Gracias por cualquier ayuda.

Respuestas a la pregunta(3)

Su respuesta a la pregunta