PHP Microservice Framework Swoft: استخدام قاعدة بيانات الجزء 1


هذه المقالة التي سنتعلمها هي: كيفية تثبيت وتشغيل قاعدة بيانات Swoft.


هذه المقالة هي واحدة من سلسلة من المقالات في قاعدة بيانات Swoft ORM. دعنا نتعلم عن Swoft!

ما هو Swoft؟


Swoft هو إطار PHOTO microservice عالي الأداء. تم نشره لسنوات عديدة وأصبح الخيار الأفضل لـ php.


يمكن أن يكون مثل Go ، خادم الويب coroutine المدمج والعميل coroutine المشترك ويقيم في الذاكرة ، مستقلة عن PHP-FPM التقليدية.


هناك عمليات مماثلة للغة Go ، مشابهة للشروح المرنة لإطار Spring Cloud.


من خلال ثلاث سنوات من التراكم واستكشاف الاتجاهات ، جعلت Swoft Swoft the Spring Cloud في عالم PHP ، وهو أفضل خيار لإطار PHP عالي الأداء وإدارة الخدمات الصغيرة.


جيثب



تثبيت


هنا نستخدم الملحن لتثبيت مكون ديسيبل


composer require swoft/db 

تستند قاعدة بيانات Swoft إلى برنامج تشغيل ملحق PDO ، يرجى التأكد من وجود ملحقات mysqld و PDO.


التكوين


يتم وضع تكوين قاعدة البيانات في ملف app\bean.php ، ويمكنك أن تفكر في الديسيبل app\bean.php ككائن bean .


 return [ 'db' => [ 'class' => Database::class, 'dsn' => 'mysql:dbname=test;host=127.0.0.1', 'username' => 'root', 'password' => '123456', 'charset' => 'utf8mb4', ], ]; 

يشبه التكوين تكوين طريقة حقن سمة yii2 , يمكنك الحصول على كائن Database yii2 حاليًا باستخدام \bean('db')


  • class حدد أي فئة لاستخدامها في حاوية الحبة الحالية. بالطبع ، يمكنك أيضًا تحديد تطبيقك الخاص لفئة قاعدة البيانات.
  • معلومات تكوين اتصال dsn التي تحتاجها PDO
  • username بيانات تسجيل الدخول اسم المستخدم
  • password المرور
  • charset أحرف قاعدة بيانات charset

إذا كنت ترغب في تكوين master-slave / cluster ، يرجى الرجوع إلى Swoft Database 文档


سهل الاستخدام


اختر


 class UserController { /** * Displays a list of all users of the application * * @return array */ public function index() { $users = DB::select('select * from users where active = ?', [1]); return (array)users; } } 

ستُرجع طريقة select دائمًا صفيفًا ، وكل نتيجة في الصفيف عبارة عن صفيف ، ويمكن الوصول إلى قيمة النتيجة كما يلي:


 foreach ($users as $user) { echo $user['name']; } 

صفقة


يمكنك استخدام طريقة معاملة DB لتشغيل مجموعة من العمليات في معاملة قاعدة بيانات. في حالة حدوث استثناء في إغلاق الصفقة ، سيتم التراجع عن المعاملة. في حالة تنفيذ إغلاق الصفقة بنجاح ، سيتم الالتزام بالمعاملة تلقائيًا. بمجرد استخدام المعاملة ، لم تعد بحاجة إلى القلق بشأن الاستعادة اليدوية أو مشكلات الالتزام:


 DB::transaction(function () { DB::table('users')->update(['status' => 1]); DB::table('posts')->delete(); }); 

جيثب


Source: https://habr.com/ru/post/ar472504/


All Articles