1. Go to this page and download the library: Download switon/binding 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/ */
switon / binding example snippets
use Switon\Binding\Attribute\ResolvedBy;
use Switon\Orm\PageResolver;
#[ResolvedBy(PageResolver::class)]
class Page
{
protected int $page;
protected int $limit;
public static function of(int $page, int $limit = 10): static
{
$instance = new static();
$instance->page = max(1, $page);
$instance->limit = max(1, $limit);
return $instance;
}
}
use ReflectionParameter;
use Switon\Core\Attribute\Autowired;
use Switon\Binding\ValueResolverInterface;
use Switon\Core\InputInterface;
use Switon\Orm\Page;
final class PageResolver implements ValueResolverInterface
{
#[Autowired] protected InputInterface $input;
public function resolve(ReflectionParameter $parameter, string $type): mixed
{
return Page::of(
(int) $this->input->get('page', 1),
(int) $this->input->get('size', 10)
);
}
}
use Switon\Orm\Page;
final class ArticleController
{
public function indexAction(Page $page): void
{
}
}
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.