The lightweight PHP database framework to accelerate development.
-
Lightweight - Portable with only one file.
-
Easy - Easy to learn and use, with a friendly construction.
-
Powerful - Supports various common and complex SQL queries, data mapping and prevents SQL injection.
-
Compatible - Supports MySQL, MSSQL, SQLite, MariaDB, PostgreSQL, Sybase, Oracle, and more.
-
Friendly - Works well with every PHP framework, such as Laravel, Codeigniter, Yii, Slim, and frameworks that support singleton extension or composer.
-
Free - Under the MIT license, you can use it anywhere, for whatever purpose.
- PHP 7.3+
- Installed PDO extension
Add Medoo to the composer.json
configuration file.
$ composer require catfan/medoo
And update the composer
$ composer update
// Require Composer's autoloader.
require 'vendor/autoload.php';
// Use the Medoo namespace.
use Medoo\Medoo;
// Connect to the database.
$database = new Medoo([
'type' => 'mysql',
'host' => 'localhost',
'database' => 'name',
'username' => 'your_username',
'password' => 'your_password'
]);
$database->insert('account', [
'user_name' => 'foo',
'email' => 'foo@bar.com'
]);
$data = $database->select('account', [
'user_name',
'email'
], [
'user_id' => 50
]);
echo json_encode($data);
// [{
// "user_name" : "foo",
// "email" : "foo@bar.com",
// }]
Before starting a new pull request, please ensure compatibility with other databases and write unit tests whenever possible.
Run phpunit tests
for unit testing and php-cs-fixer fix
to fix code style.
Each commit should start with a tag indicating the type of change: [fix]
, [feature]
, or [update]
.
Please keep it simple and keep it clear.
Medoo is released under the MIT license.
-
Official website: https://medoo.in
-
Documentation: https://medoo.in/doc
-
Twitter: https://twitter.com/MedooPHP
-
Open Collective: https://opencollective.com/medoo