sql >> Database teknologi >  >> RDS >> Mysql

Dynamisk mailkonfiguration med værdier fra databasen [Laravel]

Jeg kæmpede i 3 dage med dette problem, og fandt endelig ud af en måde at løse det på.

Først oprettede jeg en tabel mails og udfyldte den med mine værdier. Derefter oprettede jeg en udbyder MailConfigServiceProvider.php

<?php

namespace App\Providers;

use Config;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\ServiceProvider;

class MailConfigServiceProvider extends ServiceProvider
{
    /**
     * Bootstrap the application services.
     *
     * @return void
     */
    public function boot()
    {
        //
    }

    /**
     * Register the application services.
     *
     * @return void
     */
    public function register()
    {
        if (\Schema::hasTable('mails')) {
            $mail = DB::table('mails')->first();
            if ($mail) //checking if table is not empty
            {
                $config = array(
                    'driver'     => $mail->driver,
                    'host'       => $mail->host,
                    'port'       => $mail->port,
                    'from'       => array('address' => $mail->from_address, 'name' => $mail->from_name),
                    'encryption' => $mail->encryption,
                    'username'   => $mail->username,
                    'password'   => $mail->password,
                    'sendmail'   => '/usr/sbin/sendmail -bs',
                    'pretend'    => false,
                );
                Config::set('mail', $config);
            }
        }
    }
}

Og så registrerede det i config\app.php

App\Providers\MailConfigServiceProvider::class,


  1. Er der en indlejringsgrænse for korrelerede underforespørgsler i nogle versioner af Oracle?

  2. Brug af tidligere MySQL-datamappe på ny MySQL-installation

  3. Hvornår skal jeg bruge MySQLi i stedet for MySQL?

  4. Jdbc-driver ikke fundet