• Репозиторий и ActiveRecord, хорошая ли идея возвращать модели?

    index0h
    @index0h
    PHP, Golang. https://github.com/index0h
    Ну и основной вопрос, в правильном ли я направлении формирую мысли, и как подобный подход с репозиториями можно реализовать правильно ?

    Если хотите по правильному - не используйте ларавелевскую ORM, "воевать" с фреймворком - это дело не благодарное.
    Паттерн Repository как правило предполагает еще наличие Entity. Entity - это объект, умеющих хранить в себе данные и проверять их при установке. Репозиторий работает только с Entity и только с БД. Никаких bcrypt, работы с файлами, никаких уведомлений...
    Не стоит использовать публичные свойства. В противном случае вы не сможете гарантировать корректность данных в вашем Entity, как следствие всюду их придется проверять. Используйте тайпхинтинг.
    Так же рекомендую почитать: Попросили проверить код, на что смотреть нужно?
    Ответ написан
    Комментировать
  • Интернет-магазин без ИП и прием оплаты?

    zamboga
    @zamboga
    Аналитика данных, BI-аналитика, дашборды
    Для старта и теста ниши хватит 10000-30000 ₽, и то, на рекламный бюджет на период теста, при условии, что вы все делаете сами.

    Находите SaaS-платформу для интернет-магазина, например insales.ru, наполняете товаром.

    Покупаете на skladchik.com за условные 100-300 руб. курсы по контекстной рекламе, и рекламе в соцсетях (надо -
    подскажу конкретные). Проходите их.

    Запускаете трафик, докручиваете рекламу.

    Анализируете себестоимость итогового заказа с учётом стоимости рекламы и конверсии сайта на сайте декомпозиция5.рф

    И только после этого закупаете товар, когда понятна будет себестоимость, а не наоборот! Тогда есть шанс не прогореть.

    После первых 10 подтвержденых заказов (которые обработаете, закупаете поштучно, и развозите самостоятельно) закупаете товар оптом и отдаете его на фулфилмент (например, reworker.ru).
    При желании, подключаете любой сервис приёма платежей (с физиками все работают), например, moneta.ru

    Все, вы занимаетесь только трафиком и развитием бренда.

    Как встанет вопрос ИП - открываете через Эльбу или "моё дело", они бесплатно подготовят все бумажки через пошаговый мастер. Обслуживание стоит копейки, а в Эльбе вообще бесплатно для новых ИП (1 или 3 года, не помню уже). Зато всю отчётность готовит автоматом, все платежи тоже, есть синхронизация с клиент-банками и напоминалки по уплате налогов (платёжки в налоговую сервисы тоже сделают автоматом).

    Нужна будет помощь - контакты в профиле.

    UPD. Добавил инфу про бесплатный сервис анализа доходности проекта.
    Ответ написан
    6 комментариев
  • Возможно ли использование Laratrust совместно с политиками Laravel, или это взаимоисключающие понятия?

    Alex_Wells
    @Alex_Wells
    PHP/Kotlin
    Использую bouncer. Но, судя по гитхабу, laratrust тоже с гейтами и политиками дружит (все равно рекомендую bouncer).
    Ответ написан
    6 комментариев
  • Как включить telnet/ssh на роутере dir-300?

    vvpoloskin
    @vvpoloskin
    Инженер связи
    Да. Нужно поставить DD-WRT на ваш роутер.
    Ответ написан
    6 комментариев
  • Почему MTU именно 1500?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Потому что так гласит стандарт IEEE802.3

    На самом деле все просто, при таком максимальном размере датаграммы она достаточно маленькая что бы время ее доставки было не критичным (особенно в случае потерь), но и достаточно большая что бы минимизировать оверхэд на канальном уровне.

    Предположим что мы хотим послать IP датаграмму в 1500 байт. Это мы еще находимся на третьем уровне модели OSI. Теперь идем на второй, запаковываем датаграмму в ethernet-фрейм, то есть добавляем еще 26 байт, итого имеем фрейм размером в 1526 байт. Так же между всеми фреймами есть еще 12-ти байтный зазор, что бы различать где кончается один фрейм и начинается другой. То есть на каждую датаграмму в 1500 байт мы передаем фрейм в 1538 байт.

    Давайте пока не будем отвлекаться на всякие Fast Ethernet и примим что скорость нашего Ethernet - 10mbps. Посчитаем сколько фреймов может передаваться в секунду:

    10 Mbps / 1538 байт = 812.74 фреймов / секунду.

    Имея количество фреймов в секунду мы можем прикинуть, при каком размере сколько будет идти наша датаграмма и какова будет полезная нагрузка на канал:

    812.74 * 1500 = 9 765 625 bps или ~9.7Mbps что есть ~97% заполнения канала. Логично что если повысить MTU то и полезная нагрузка будет больше, но тут стоит просто иметь в виду еще и потери пакетов и прочее. В этом плане маленькие пакеты лучше, в итоге приходим к компромису.

    Конечно с тех пор много чего поменялось, но суть остается та же. Выбираем размер пакета по оверхэду и вероятности потерь.

    Рекомендую почитать: en.wikipedia.org/wiki/Jumbo_frame
    Ответ написан
    2 комментария
  • Как заменить текст на ссылку?

    Immortal_pony
    @Immortal_pony Куратор тега PHP
    $str = "Основателем социальной сети ВКонтакте был [id1|Павел Дуров]";
    if (preg_match_all("/\[.*\]/m", $str, $matches)) {
        foreach ($matches[0] as $match) {
            list($id, $name) = explode("|", substr($match, 1, -1));
            $link = "<a href='http://vk.com/{$id}' target='_blank'>{$name}</a>"; 
            var_dump($link);
        }
    }
    Ответ написан
    2 комментария