PHP code example of plasma / schemas
1. Go to this page and download the library: Download plasma/schemas library. Choose the download type require. 2. Extract the ZIP file and open the index.php. 3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
plasma / schemas example snippets
$loop = \React\EventLoop\Factory::create();
$factory = new \Plasma\Drivers\MySQL\DriverFactory($loop, array());
$client = \Plasma\Client::create($factory, 'root:1234@localhost');
$repository = new \Plasma\Schemas\Repository($client);
/**
* Our example table "users" consists of two columns:
* - id ; auto incremented integer (length 12) primary
* - name ; varchar(255) utf8mb4_generl_ci
*/
class Users extends \Plasma\Schemas\AbstractSchema {
public $id;
public $name;
/**
* Returns the schema definition.
* @return \Plasma\Schemas\ColumnDefinitionInterface[]
*/
static function getDefinition(): array {
return array(
// A generic column definition builder
// solely for ease of use and does not
// have to be used.
// Any Plasma Column Definition
// can be used.
static::getColDefBuilder()
->name('id')
->type('INTEGER')
->length(12)
->autoIncrement()
->primary()
->getDefinition(),
static::getColDefBuilder()
->name('name')
->type('VARCHAR')
->length(255)
->getDefinition()
);
}
/**
* Returns the name of the table.
* @return string
*/
static function getTableName(): string {
return 'users';
}
/**
* Returns the name of the identifier column (primary or unique), or null.
* @return string|null
*/
static function getIdentifierColumn(): ?string {
return 'id';
}
}
// null is the SQL grammar (see plasma/sql-common)
$builderA = new \Plasma\Schemas\SQLDirectory(Users::class, null);
$repository->registerDirectory('users', $builderA);
$repository->execute('SELECT * FROM `users`', array())
->done(function (\Plasma\Schemas\SchemaCollection $collection) {
// Do something with the collection
});
$loop->run();