PHP code example of somnambulist / symfony-micro-service
1. Go to this page and download the library: Download somnambulist/symfony-micro-service 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/ */
somnambulist / symfony-micro-service example snippets
use Somnambulist\Components\Queries\AbstractQuery;
class FindObjectById extends AbstractQuery
{
private $id;
public function __construct($id)
{
$this->id = $id;
}
public function getId()
{
return $this->id;
}
}
class FindObjectByIdQueryHandler
{
public function __invoke(FindObjectById $query)
{
// do some operations to find the thing
return $object;
}
}
declare(strict_types=1);
namespace App\Resources\Factories;
use Doctrine\Migrations\AbstractMigration;
use Doctrine\Migrations\Version\DbalMigrationFactory;
use Doctrine\Migrations\Version\MigrationFactory;
use Symfony\Component\DependencyInjection\ContainerAwareInterface;
use Symfony\Component\DependencyInjection\ContainerInterface;
/**
* Class MigrationFactoryDecorator
*
* From: https://symfony.com/doc/master/bundles/DoctrineMigrationsBundle/index.html#migration-dependencies
*
* @package App\Resources\Factories
* @subpackage App\Resources\Factories\MigrationFactoryDecorator
*/
class MigrationFactoryDecorator implements MigrationFactory
{
private MigrationFactory $factory;
private ContainerInterface $container;
public function __construct(DbalMigrationFactory $migrationFactory, ContainerInterface $container)
{
$this->factory = $migrationFactory;
$this->container = $container;
}
public function createVersion(string $migrationClassName): AbstractMigration
{
$instance = $this->factory->createVersion($migrationClassName);
if ($instance instanceof ContainerAwareInterface) {
$instance->setContainer($this->container);
}
return $instance;
}
}
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.