Save tens of thousands of dollars* worth of development time by boosting your productivity with the most powerful, zero config object relational mapper the industry has ever known.
Powering enterprise web applications since 2009 and still running strong.
* read the case study
: RedBeanPHP 5.7.1 (Jubilate Sunday Edition) New
: RedBeanPHP 5.7 (Jubilate Sunday Edition)
: RedBeanPHP 5.6.2 (Christmas Edition)
: RedBeanPHP 5.6.1 (Christmas Edition)
: RedBeanPHP 5.6 (Christmas Edition)
: RedBeanPHP 5.5 (Pentecost Edition)
: RedBeanPHP 5.4 (St. Nicholas Edition)
: RedBeanPHP 5.3 (Palm Sunday Edition)
DEMO: Quickly import CSV
Let's import a CSV of country codes in just about a minute, including the time to download and install RedBeanPHP!
With RedBeanPHP you don't need to design your database schema upfront, you don't need a database administrator, you don't need endless configuration files in yaml, xml or json, you don't need hundreds of untrusted dependencies or a sluggish framework, just one file and go! RedBeanPHP not only keeps you in the market but it can save your project in hard times. Not convinced yet? Read the case study, detailing how RedBeanPHP slashed development costs by more than a factor 10.
This is how you do CRUD in RedBeanPHP:
//for version 5.3 and higher
//optional but recommended
R::useFeatureSet( 'novice/latest' );
$post = R::dispense( 'post' );
$post->text = 'Hello World';
//create or update
$id = R::store( $post );
$post = R::load( 'post', $id );
R::trash( $post );
This automatically generates the database, tables and columns... on-the-fly. It infers relations based on naming conventions. RedBeanPHP also makes it very easy to work with trees in databases:
$pages = R::children( $site, $extraSQL );
RedBeanPHP uses recursive table expressions to deal with tree structures in your database to improve performance (to use this feature you need a database that supports RCTEs like MySQL 8.0.1+, MariaDB 10.2.2+ or PostgreSQL 9+). Learn more about RedBeanPHP trees.
In RedBeanPHP 5.3 and higher you can use R::useFeatureSet( 'novice/latest' ) to automatically select the latest features. If you are working on an older code base you can ommit this line. The latest keyword means that you want to use the latest features. The novice keyword means that some dangerous features like R::nuke() will be turned off. You can also specify a specific RedBeanPHP version like 5.3 (minimum).
No verbose XML files, no annoying annotations, no YAML or INI. Zero Config. Just start coding.
During development, RedBeanPHP will adapt the database schema to fit
your needs, giving you the NoSQL experience.
When deploying to production servers, you can freeze the schema and
benefit from performance gains and referential integrity.
RedBeanPHP offers the best of both worlds!
auto-discovery of models, fast trees,
deep copying and smart import.
Write less, do more!
RedBeanPHP strives to support all ALL Free, Open Source databases.
Currently, RedBeanPHP supports: MySQL, MariaDB, SQLite, PostgreSQL, CUBRID and Firebird/Interbase***. RedBeanPHP supports PHP version HHVM, 5.2*, 5.3.0-5.3.2**, 5.3.3, 5.4, 5.5, 5.6, 6.0*, 7.0, 7.1, 7.2, 7.3, 7.4, 8.0 and 8.1. We take backward compatibility very serious! RedBeanPHP has a track record of 15 years of PHP language level compatibility without a single breaking change! You can trust RedBeanPHP.
*=partial (according to community)
The library has been created in 2009 and
is now considered quite mature. No major bugs have been found since 2013 and
only minor features have been added in recent years. The code base is being
tested with every change, there are over 20338* unit tests (100% code coverage) for PHP 5.3-latest and all
supported databases. The project is
actively maintained and we take backward compatibility *very* serious.
The code is well-documented.
RedBeanPHP is trusted by many developers worldwide and has over 2.1 million installs on
packagist alone! (since 3.5)
and more than 2k stars on github, furthermore thousands of projects have RedBeanPHP as a dependency.
Signify keys and checksums are provided.
*=running the full (!) unit test suite
Download the easy-to-use one-in-all package, one single file containing the entire RedBeanPHP library!
No composer, no auto-loaders, no configuration, just download and run!
Go to the DOWNLOAD page and download to latest
version of RedBeanPHP!
Github repository: RedBeanPHP on Github.
Travis-CI Test Dashboard: RedBeanPHP on Travis.
API Documentation: RedBeanPHP API Documentation.
Community Forum: RedBeanPHP Community Forum.
Your logo on this website?
RedBeanPHP is written by BDFL Gabor de Mooij and the RedBeanPHP community.
back to main menu
Performance monitor: this page has been generated in 0.017839908599854s. Is the performance lacking? Please drop me an e-mail to notify me!