
Este artículo que vamos a aprender es: Cómo instalar y ejecutar la base de datos Swoft.
Este artículo es uno de una serie de artículos sobre la base de datos Swoft ORM. ¡Aprendamos sobre Swoft!
¿Qué es swoft?
Swoft es un marco de trabajo de rutina de microservicio de alto rendimiento de PHP. Se ha publicado durante muchos años y se ha convertido en la mejor opción para php.
Puede ser como Go, un servidor web de rutina incorporado y un cliente de rutina común y reside en la memoria, independiente del PHP-FPM tradicional.
Existen operaciones de lenguaje Go similares, similares a las anotaciones flexibles del marco Spring Cloud.
A través de tres años de acumulación y exploración de direcciones, Swoft ha convertido a Swoft en la Nube de Primavera en el mundo PHP, que es la mejor opción para el marco de trabajo de alto rendimiento y la gestión de microservicios de PHP.
Github
Instalar
Aquí usamos composer para instalar el componente db
composer require swoft/db
La base de datos Swoft se basa en el controlador de extensión PDO, asegúrese de que haya extensiones mysqld y PDO.
Config
La configuración de la base de datos se coloca en el archivo app\bean.php
, y puede pensar en la base de datos configurada como un objeto bean
.
return [ 'db' => [ 'class' => Database::class, 'dsn' => 'mysql:dbname=test;host=127.0.0.1', 'username' => 'root', 'password' => '123456', 'charset' => 'utf8mb4', ], ];
La configuración es similar a la configuración del método de inyección de atributos de objeto yii2
Puede obtener el objeto de Database
configurado actualmente con \bean('db')
class
Especifique qué clase usar para el contenedor de beans actual. Por supuesto, también puede especificar su propia implementación de la clase de base de datos.dsn
Información de configuración de conexión que PDO necesita usarusername
de usuario Nombre de usuariopassword
Contraseña de inicio de sesión de la base de datos- juego de
charset
base de datos charset
Si desea configurar maestro-esclavo / clúster, consulte Swoft Database 文档
Fácil de usar
Seleccione
class UserController { public function index() { $users = DB::select('select * from users where active = ?', [1]); return (array)users; } }
El método select
siempre devolverá una matriz, y cada resultado en la matriz es una matriz, y se puede acceder al valor del resultado de esta manera:
foreach ($users as $user) { echo $user['name']; }
Transacción
Puede usar el método de transacción de DB para ejecutar un conjunto de operaciones en una transacción de base de datos. Si se produce una excepción en el cierre de cierre de la transacción, la transacción se revertirá. Si el cierre de la transacción El cierre se ejecuta con éxito, la transacción se confirmará automáticamente. Una vez que haya utilizado la transacción, ya no tendrá que preocuparse por la reversión manual o los problemas de confirmación:
DB::transaction(function () { DB::table('users')->update(['status' => 1]); DB::table('posts')->delete(); });
Github