mantoufan / medoo
The lightweight PHP database framework to accelerate development
Fund package maintenance!
Open Collective
paypal.me/AngelaonLai
Installs: 1 130
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 1 148
Open Issues: 0
Type:framework
Requires
- php: >=7.3
- ext-pdo: *
Requires (Dev)
- phpunit/phpunit: ^9.0
Suggests
- ext-pdo_dblib: For MSSQL or Sybase database on Linux/UNIX platform
- ext-pdo_mysql: For MySQL or MariaDB database
- ext-pdo_oci: For Oracle database
- ext-pdo_pqsql: For PostgreSQL database
- ext-pdo_sqlite: For SQLite database
- ext-pdo_sqlsrv: For MSSQL database on both Window/Liunx platform
- dev-master
- v2.1.5
- v2.1.4
- v2.1.3
- v2.1.2
- v2.1.1
- v2.1.0
- v2.0.1
- v2.0.0
- v1.7.10
- v1.7.9
- v1.7.8
- v1.7.7
- v1.7.6
- v1.7.5
- v1.7.4
- v1.7.3
- v1.7.2
- v1.7.1
- v1.7.0
- v1.6.1
- v1.6
- v1.5.7
- v1.5.6
- v1.5.5
- v1.5.4
- v1.5.3
- v1.5.2
- v1.5.1
- v1.5
- v1.5a
- v1.4.5
- v1.4.4
- v1.4.3
- v1.4.2
- v1.4.1
- v1.4
- v1.2.1
- v1.2
- v1.1.2
- v1.1.1
- v1.1
- v1.0.2
- v1.0
- v0.9.8
- v0.9.7
- v0.9.6.2
- v0.9.6
- v0.9.5.3
- dev-develop
This package is auto-updated.
Last update: 2025-03-26 18:42:10 UTC
README
The lightweight PHP database framework to accelerate development
Features
-
Lightweight - Portable with only one file.
-
Easy - Easy to learn and use, 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, like Laravel, Codeigniter, Yii, Slim, and framework that are supporting singleton extension or composer.
-
Free - Under the MIT license, you can use it anywhere, whatever you want.
Requirement
PHP 7.3+ and installed PDO extension.
Get Started
Install via composer
Add Medoo to composer.json configuration file.
$ composer require catfan/medoo
And update the composer
$ composer update
// Require Composer's autoloader. require 'vendor/autoload.php'; // Using Medoo namespace. use Medoo\Medoo; // Connect the database. $database = new Medoo([ 'type' => 'mysql', 'host' => 'localhost', 'database' => 'name', 'username' => 'your_username', 'password' => 'your_password' ]); // Enjoy $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", // }]
Contribution Guides
For starting a new pull request, please make sure it's compatible with other databases and write a unit test as possible.
Run phpunit tests
for unit testing and php-cs-fixer fix
for fixing code style.
Each commit is started with [fix]
, [feature]
or [update]
tag to indicate the change.
Please keep it simple and keep it clear.
License
Medoo is under the MIT license.
Links
-
Official website: https://medoo.in
-
Documentation: https://medoo.in/doc