
Este artigo que vamos aprender é: Como instalar e executar o banco de dados Swoft.
Este artigo é parte de uma série de artigos no Swoft Database ORM. Vamos aprender sobre o Swoft!
O que é o Swoft?
O Swoft é um framework de alto desempenho em microsserviços em PHP. Foi publicado por muitos anos e se tornou a melhor escolha para php.
Pode ser como Go, servidor da web incorporado de corotina e cliente comum de corotina e é residente na memória, independente do PHP-FPM tradicional.
Existem operações de idioma Go semelhantes, semelhantes às anotações flexíveis da estrutura Spring Cloud.
Através de três anos de acumulação e exploração de direção, a Swoft transformou a Swoft na Spring Cloud no mundo PHP, que é a melhor escolha para a estrutura de alto desempenho e gerenciamento de microsserviços do PHP.
Github
Instale
Aqui usamos o compositor para instalar o componente db
composer require swoft/db
O banco de dados Swoft é baseado no driver de extensão PDO, verifique se existem extensões mysqld e PDO.
Config
A configuração do banco de dados é colocada no arquivo app\bean.php
, e você pode pensar no db configurado como um objeto de bean
.
return [ 'db' => [ 'class' => Database::class, 'dsn' => 'mysql:dbname=test;host=127.0.0.1', 'username' => 'root', 'password' => '123456', 'charset' => 'utf8mb4', ], ];
A configuração é semelhante à configuração do método de injeção de atributo do objeto yii2
. Você pode obter o objeto de Database
atualmente configurado com \bean('db')
class
Especifique qual classe usar para o contêiner de bean atual. Obviamente, você também pode especificar sua própria implementação da classe de banco de dados.dsn
configuração da conexão dsn
que o PDO precisa usarusername
usuário Nome de usuário de login de dadospassword
Senha de login no banco de dados- conjunto de caracteres do banco de dados
charset
Se você deseja configurar o master-slave / cluster, consulte o Swoft Database.
Simples de usar
Selecione
class UserController { public function index() { $users = DB::select('select * from users where active = ?', [1]); return (array)users; } }
O método select
sempre retornará uma matriz, e cada resultado na matriz é uma matriz, e o valor do resultado pode ser acessado assim:
foreach ($users as $user) { echo $user['name']; }
Transação
Você pode usar o método de transação do DB para executar um conjunto de operações em uma transação de banco de dados. Se ocorrer uma exceção no fechamento de fechamento da transação, a transação será revertida. Se o fechamento da transação for executado com êxito, a transação será confirmada automaticamente. Depois de usar a transação, você não precisa mais se preocupar com problemas de reversão ou confirmação manual:
DB::transaction(function () { DB::table('users')->update(['status' => 1]); DB::table('posts')->delete(); });
Github