Skip to content

Instantly share code, notes, and snippets.

@sagittaracc
sagittaracc / php-flash-python-routes.php
Last active January 24, 2023 14:42
PHP Flask Python style routes
<?php
#[Attribute]
class Route
{
function __construct(
public string $endpoint,
public string $verb = 'GET'
) {}
}
@sagittaracc
sagittaracc / Matrix.php
Created November 18, 2022 07:50
php matrix determinant
<?php
class Matrix
{
private $rows = 0;
private $cols = 0;
private $data = null;
public function __construct($rows, $cols)
@sagittaracc
sagittaracc / sort.php
Created November 18, 2022 07:26
PHP Sort
<?php
class Soldier
{
private $name;
private $height;
public function __construct($name)
{
$this->name = $name;
@sagittaracc
sagittaracc / talk.php
Last active November 9, 2022 13:46
Chat
<?php
$vova = new Man();
$vova->setName('Vova');
$vika = new Woman();
$vika->setName('Vika');
$petr = new Man();
$petr->setName('Petr');
@sagittaracc
sagittaracc / make_tea.php
Created November 8, 2022 12:43
How to make a cup of tea =)
<?php
$cup = new Cup(250);
$spoon = new Spoon();
$someWater = new Water(250);
$sugar = new Sugar();
$cup->put($sugar);
$cup->put($spoon);
$cup->poor($someWater);
@sagittaracc
sagittaracc / Cell.php
Last active November 8, 2022 11:17
Matrix multiplication
<?php
class Cell
{
private $rowIndex;
private $colIndex;
public function __construct($rowIndex, $colIndex)
{
$this->rowIndex = $rowIndex;
@sagittaracc
sagittaracc / yii2-assist.php
Last active March 10, 2023 14:14
Yii2 Assist
<?php
namespace backend\components;
use yii\base\Component;
use Exception;
use Yii;
use yii\helpers\Html;
/**
@sagittaracc
sagittaracc / noun_case.php
Last active March 25, 2022 13:57
Склонение существительного в соответствии с числительным (множественный падеж)
<?php
/**
* Возвращает существительное в соответствующей форме по числительному
* @param int $number
* @param array $cases формы существительного
* При склонении по числительному существительное имеет три формы
*
* Пример: слово "программа"
*
@sagittaracc
sagittaracc / riverSizes.js
Last active February 17, 2022 07:58
River Sizes | AlgoExpert
/**
* Проверяет выход за границы матрицы при её обходе по рекам
* @param array matrix исходная матрица
* @param int line позиция по горизонтали в матрице
* @param int column позиция по вертикали в матрице
* @return boolean
*/
function isOffMatrix(matrix, line, column) {
return line < 0
|| column < 0
@sagittaracc
sagittaracc / observer.js
Created December 24, 2021 13:37
Observer pattern in javascript
class Observer {
constructor (name) {
this.name = name
}
subscribe (event) {
event.addObserver(this)
}
notify (event) {