The lightweight PHP database framework to accelerate development.
-
Lightweight - Single-file framework with minimal dependencies.
-
Easy - Simple and intuitive API for quick integration.
-
Powerful - Supports complex SQL queries, data mapping, and SQL injection prevention.
-
Compatible - Works with MySQL, MariaDB, PostgreSQL, SQLite, MSSQL, Oracle, Sybase, and more.
-
Friendly - Integrates seamlessly with Laravel, CodeIgniter, Yii, Slim, and other PHP frameworks.
-
Free - Licensed under MIT, free to use for any purpose.
- PHP 7.3 or later
- PDO extension enabled
Add Medoo to the composer.json
configuration file.
$ composer require catfan/medoo
Then update Composer
$ composer update
// Require Composer's autoloader
require 'vendor/autoload.php';
// Import Medoo namespace
use Medoo\Medoo;
// Initialize database connection
$database = new Medoo([
'type' => 'mysql',
'host' => 'localhost',
'database' => 'name',
'username' => 'your_username',
'password' => 'your_password'
]);
// Insert data
$database->insert('account', [
'user_name' => 'foo',
'email' => 'foo@bar.com'
]);
// Retrieve data
$data = $database->select('account', [
'user_name',
'email'
], [
'user_id' => 50
]);
echo json_encode($data);
// [{
// "user_name" : "foo",
// "email" : "foo@bar.com",
// }]
Before submitting a pull request, ensure compatibility with multiple database engines and include unit tests when possible.
- Run
phpunit tests
to execute unit tests. - Use
php-cs-fixer fix
to enforce code style consistency.
Each commit should begin with a tag indicating the type of change:
[fix]
for bug fixes[feature]
for new features[update]
for improvements
Keep contributions simple and well-documented.
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