1. Go to this page and download the library: Download mspirkov/yii2-web 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/ */
mspirkov / yii2-web example snippets
use MSpirkov\Yii2\Web\CookieManagerInterface;
use MSpirkov\Yii2\Web\CookieManager;
use MSpirkov\Yii2\Web\Request;
use yii\web\Response;
return [
...
'container' => [
'definitions' => [
CookieManagerInterface::class => static fn() => new CookieManager(
Instance::ensure('request', Request::class),
Instance::ensure('response', Response::class),
),
],
],
...
];
use MSpirkov\Yii2\Web\CookieManagerInterface;
final readonly class ExampleService
{
public function __construct(
private CookieManagerInterface $cookieManager,
) {}
public function addCookie(): void
{
$this->cookieManager->add([
'name' => 'someCookieName',
'value' => 'someCookieValue',
]);
}
}
use MSpirkov\Yii2\Web\HtmlTrait;
final class Html extends \yii\helpers\Html
{
use HtmlTrait;
}
use MSpirkov\Yii2\Web\HtmlTrait;
final class Html extends \yii\bootstrap5\Html
{
use HtmlTrait;
}
use yii\BaseYii;
use yii\web\Application as BaseWebApplication;
use yii\console\Application as BaseConsoleApplication;
use MSpirkov\Yii2\Web\Request;
final class Yii extends BaseYii
{
/** @var __WebApplication|__ConsoleApplication */
public static $app;
}
/**
* @property-read Request $request
*/
final class __WebApplication extends BaseWebApplication {}
final class __ConsoleApplication extends BaseConsoleApplication {}
use MSpirkov\Yii2\Web\Request;
use yii\web\Controller as BaseController;
/**
* @property Request $request
*/
abstract class AbstractController extends BaseController
{
public function init(): void
{
parent::init();
$this->request = Instance::ensure($this->request, Request::class);
}
}
final class ProductController extends AbstractController
{
public function __construct(
string $id,
Module $module,
private readonly ProductService $service,
array $config = [],
) {
parent::__construct($id, $module, $config);
}
public function actionDelete(): array
{
$this->response->format = Response::FORMAT_JSON;
return $this->service->delete($this->request->getPostInt('id',
use MSpirkov\Yii2\Web\RequestTrait;
class Request extends \yii\web\Request
{
use RequestTrait;
}
bash
php composer.phar
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.