Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/catfan/Medoo

The lightweight PHP database framework to accelerate the development.
https://github.com/catfan/Medoo

composer database hacktoberfest medoo mssql mysql php php-database-framework php-framework php-frameworks sqlite

Last synced: about 2 months ago
JSON representation

The lightweight PHP database framework to accelerate the development.

Awesome Lists containing this project

README

        




Build Status
Total Downloads
Latest Stable Version
License
Backers on Open Collective
Sponsors on Open Collective

> The lightweight PHP database framework to accelerate development.

## Features

* **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.

## Requirements

- PHP 7.3+
- Installed PDO extension

## Get Started

### Install via composer

Add Medoo to the `composer.json` configuration file.
```bash
$ composer require catfan/medoo
```

And update the composer
```bash
$ composer update
```

```php
// 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' => '[email protected]'
]);

$data = $database->select('account', [
'user_name',
'email'
], [
'user_id' => 50
]);

echo json_encode($data);

// [{
// "user_name" : "foo",
// "email" : "[email protected]",
// }]
```

## Contribution Guidelines

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.

## License

Medoo is released under the MIT license.

## Links

* Official website: [https://medoo.in](https://medoo.in)

* Documentation: [https://medoo.in/doc](https://medoo.in/doc)

* Twitter: [https://twitter.com/MedooPHP](https://twitter.com/MedooPHP)

* Open Collective: [https://opencollective.com/medoo](https://opencollective.com/medoo)

## Support Our Other Product
[Gear Browser - Web Browser for Geek](https://gear4.app)

[![Gear Browser](https://github.com/catfan/Medoo/assets/1467904/bc5059d4-6a2d-4bbf-90d9-a9f71bae3335)](https://gear4.app)