1. Go to this page and download the library: Download sharpen/versionna 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/ */
sharpen / versionna example snippets
use Sharpen\Versionna\MigrationCreator;
$configuration = itial definition of the rt index';
$migrationCreator = new MigrationCreator(
$configuration['migrations_path'],
$migrationName,
$description,
);
$migrationCreator->create();
echo 'Migration created successfully';
use Sharpen\Versionna\Manticore\ManticoreConnection;
use Sharpen\Versionna\MigrationDirector;
use Sharpen\Versionna\Storage\DatabaseConfiguration;
use Sharpen\Versionna\Storage\DatabaseConnection;
use Sharpen\Versionna\Storage\MigrationTable;
$configuration = onnection']['port'],
);
$migrationTable = new MigrationTable(
$dbConnection,
$configuration['table_prefix'],
$configuration['migration_table'],
);
$director = new MigrationDirector();
$director
->dbConnection($dbConnection)
->manticoreConnection($manticoreConnection)
->migrationsPath($configuration['migrations_path'])
->migrationTable($migrationTable);
if (! $migrationTable->exists()) {
echo 'Migration table doesn\'t exist';
exit(1);
} elseif (! $director->hasPendingMigrations()) {
echo 'No pending migrations';
exit(0);
}
try {
$director->migrate();
} catch (Exception $exception) {
echo $exception->getMessage();
exit(1);
}
echo 'Applied all migrations';
use Sharpen\Versionna\Manticore\ManticoreConnection;
use Sharpen\Versionna\MigrationDirector;
use Sharpen\Versionna\Storage\DatabaseConfiguration;
use Sharpen\Versionna\Storage\DatabaseConnection;
use Sharpen\Versionna\Storage\MigrationTable;
$configuration = ['port'],
);
$migrationTable = new MigrationTable(
$dbConnection,
$configuration['table_prefix'],
$configuration['migration_table']
);
$director = new MigrationDirector();
$director
->dbConnection($dbConnection)
->manticoreConnection($manticoreConnection)
->migrationsPath($configuration['migrations_path'])
->migrationTable($migrationTable);
$steps = 1;
$director->undoMigrations($steps);
$configuration = tabaseConnection(
DatabaseConfiguration::fromArray(
$configuration['connections']['mysql']
)
);
$migrationTable = new MigrationTable(
$dbConnection,
$configuration['table_prefix'],
$configuration['migration_table']
);
$ascending = false;
$migrations = $migrationTable->getAll($ascending);
if ($migrations) {
$migrationsDone = array_map(
function ($migration) {
return $migration->toArray();
},
$migrations,
);
var_dump($migrationsDone);
} else {
echo 'The migration table is empty';
}
use Sharpen\Versionna\Manticore\ManticoreConnection;
use Sharpen\Versionna\MigrationDirector;
use Sharpen\Versionna\Storage\DatabaseConfiguration;
use Sharpen\Versionna\Storage\DatabaseConnection;
use Sharpen\Versionna\Storage\MigrationTable;
$dbConnection = new DatabaseConnection(
DatabaseConfiguration::fromArray(
$configuration['connections'][$connection]
)
);
$manticoreConnection = new ManticoreConnection(
$configuration['manticore_connection']['host'],
$configuration['manticore_connection']['port'],
);
$migrationTable = new MigrationTable(
$dbConnection,
$configuration['table_prefix'],
$configuration['migration_table']
);
$director = new MigrationDirector();
$director
->dbConnection($dbConnection)
->manticoreConnection($manticoreConnection)
->migrationsPath($configuration['migrations_path'])
->migrationTable($migrationTable);
$pendingMigrations = $director->getPendingMigrations();
if (count($pendingMigrations) > 0) {
array_map(
function ($migration) {
return ['name' => $migration];
},
array_values(array_keys($pendingMigrations)),
);
} else {
echo 'ManticoreSearch is up to date! no pending migrations';
}
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.