Medoo ডেটাবেস

webman/medoo এর ভিত্তিতে Medoo সংযোগ পুলের ফিচার যুক্ত করেছে এবং এটি সহকারিতা এবং অ-সহকারিতার পরিবেশ সমর্থন করে, ব্যবহার Medoo এর সাথে একই।

দ্রষ্টব্য
বর্তমান ম্যানুয়ালটি webman v2 সংস্করণের জন্য, যদি আপনি webman v1 সংস্করণ ব্যবহার করেন তবে অনুগ্রহ করে v1 সংস্করণের ম্যানুয়াল দেখুন।

ইনস্টলেশন

composer require webman/medoo

Medoo ডেটাবেস কনফিগারেশন

কনফিগারেশন ফাইলের অবস্থান config/plugin/webman/medoo/database.php

Medoo ডেটাবেস ব্যবহার

<?php
namespace app\controller;

use support\Request;
use support\Medoo;

class Index
{
    public function index(Request $request)
    {
        $user = Medoo::get('user', '*', ['uid' => 1]);
        return json($user);
    }
}

সুচনা
Medoo::get('user', '*', ['uid' => 1]);
এর সমতুল্য
Medoo::instance('default')->get('user', '*', ['uid' => 1]);

Medoo একাধিক ডেটাবেস কনফিগারেশন

কনফিগারেশন
config/plugin/webman/medoo/database.php এ একটি নতুন কনফিগারেশন যোগ করুন, key যেকোনো হতে পারে, এখানে ব্যবহৃত হচ্ছে other

<?php
return [
    'default' => [
        'type' => 'mysql',
        'host' => 'localhost',
        'database' => 'database',
        'username' => 'username',
        'password' => 'password',
        'charset' => 'utf8mb4',
        'collation' => 'utf8mb4_general_ci',
        'port' => 3306,
        'prefix' => '',
        'logging' => false,
        'error' => PDO::ERRMODE_EXCEPTION,
        'option' => [
            PDO::ATTR_CASE => PDO::CASE_NATURAL
        ],
        'command' => [
            'SET SQL_MODE=ANSI_QUOTES'
        ],
        'pool' => [ // সংযোগ পুল কনফিগারেশন
            'max_connections' => 5, // সর্বাধিক সংযোগ সংখ্যা
            'min_connections' => 1, // ন্যূনতম সংযোগ সংখ্যা
            'wait_timeout' => 60,   // সংযোগ পুল থেকে সংযোগ পাওয়ার জন্য অপেক্ষার সর্বাধিক সময়, সময়সীমা অতিক্রম হলে একটি ব্যতিক্রম উত্পন্ন হবে
            'idle_timeout' => 3,    // সংযোগ পুলে সংযোগের সর্বাধিক অলস সময়, সময়সীমা অতিক্রম হলে এটি বন্ধ করে দেওয়া হবে, যতক্ষণ না সংযোগের সংখ্যা min_connections হয়
            'heartbeat_interval' => 50, // সংযুক্ত পুলের হৃদস্পন্দন পরীক্ষার সময়, সেকেন্ডে, সুপারিশ করা হয় 60 সেকেন্ডের কম 
        ]
    ],
    // এখানে একটি other কনফিগারেশন যোগ করা হয়েছে
    'other' => [
        'type' => 'mysql',
        'host' => 'localhost',
        'database' => 'database',
        'username' => 'username',
        'password' => 'password',
        'charset' => 'utf8mb4',
        'collation' => 'utf8mb4_general_ci',
        'port' => 3306,
        'prefix' => '',
        'logging' => false,
        'error' => PDO::ERRMODE_EXCEPTION,
        'option' => [
            PDO::ATTR_CASE => PDO::CASE_NATURAL
        ],
        'command' => [
            'SET SQL_MODE=ANSI_QUOTES'
        ],
        'pool' => [
            'max_connections' => 5,
            'min_connections' => 1,
            'wait_timeout' => 60,
            'idle_timeout' => 3,
            'heartbeat_interval' => 50,
        ],
    ],
];

Medoo ডেটাবেস ব্যবহার

$user = Medoo::instance('other')->get('user', '*', ['uid' => 1]);

আরও জানুন Medoo অফিসিয়াল ডকুমেন্টেশন