Все потоки
Поиск
Написать публикацию
Обновить
28.83

Laravel *

Бесплатный веб-фреймворк с открытым кодом

Сначала показывать
Порог рейтинга
Уровень сложности

Веб-приложение для видеотрансляций на Laravel

Время на прочтение12 мин
Количество просмотров6.5K

Привет, Хабр. В этой статье я хочу поделиться своим опытом создания приложения на фреймворке Laravel по трансляции видеоконтента. Итак начнём.

Проект опубликован как свободное ПО

Читать далее

Демо Symfony конвертер валют

Время на прочтение5 мин
Количество просмотров3.8K

Недавно довелось делать тестовое задание на Symfony - конвертер валют с прямой и кросс-конвертацией. Получилось весьма неплохо, поэтому хочу поделиться с сообществом примером простого консольного приложения по всем канонам Symfony: DI, autowiring, тегирование сервисов, гибкая конфигурация, вот это вот всё. Надеюсь, это будет полезно начинающим "симфонистам".

Код приложения https://github.com/vladimirmartsul/symfony-exchange-demo

Приложение считает "обмен валюты" по прямым курсам (например, USD -> EUR), а также через "промежуточные" валюты (например, BTC -> EUR). Также есть фейковые курсы для тестов.

Курсы берутся с сайтов ecb.europa.eu (основные мировые валюты по отношению к EUR) и coindesk.com (BTC к USD). Триангуляция основана на принципах отсюда http://www.dpxo.net/articles/fx_rate_triangulation_sql.html. Для хранения данных используется БД SQLite.

Читать далее

PHP-Дайджест № 222/4 (26 апреля – 31 мая 2022)

Время на прочтение5 мин
Количество просмотров7.2K

Доброго дня! Представляю вашему вниманию очередной дайджест новостей из мира PHP.

В этом выпуске: новые версии PHP, новости RFC, новости популярных фреймворков, обзор интересных статей и многое другое.

Читать далее

Laravel Route Grouping: 6 Методов организации маршрутов

Время на прочтение7 мин
Количество просмотров18K

В процессе работы программисту всегда полезно иметь структурированные записи для последующего к ним возвращения. Это позволяет не терять нужные знания и разгрузить память. Вашему вниманию предлагается полезная в работе запись, к которой можно всегда обращаться для организации (рефакторинга) роутов. Перевод статьи известного в кругах Ларавел PovilasKorop

Laravel Routing - это функция, которую разработчики изучают с самого начала. Но по мере роста проектов становится все труднее управлять постоянно растущими файлами маршрутов, прокручивая их, чтобы найти нужное Route::get() объявление. К счастью, существуют методы, позволяющие сделать файлы маршрутов короче и читабельнее, группируя маршруты и их настройки по-разному. Давайте посмотрим.

Здесь мы не будем говорить только об общем простом Route::group()- это начальный уровень. Давайте погрузимся немного глубже.

Читать далее

Асинхронность, конкурентность, параллельность, многопоточность — разбираемся «по понятиям» :)

Время на прочтение15 мин
Количество просмотров29K

Эта статья представляет собой краткий (шутка!) конспект одноименного (почти) вебинара, недавно проведенного автором.

Цель и вебинара и статьи - дать начинающим представление о тех понятиях, которые вынесены в заголовок, чтобы помочь из избежать повсеместной путаницы, сопровождающей эти темы.

Ну и немного раскрыть глаза на то, что, оказывается в PHP есть и асинхронность, и многопоточность, и в общем-то не нужно ждать мифической версии PHP 10, чтобы начать их использовать уже прямо сейчас!

Лонг-рид с кодом ждёт вас!

Уменьшение трафика за счёт сжатия изображений. На примере Laravel

Время на прочтение9 мин
Количество просмотров8.8K

Как уменьшить трафик к вашему сайту в 200 раз? Возможно ли это?

В этой статье рассмотрено динамическое создание превьюшек для графических файлов и последующее сохранение результатов такого преобразования для последующего более быстрого доступа к ним.

Пример реализации на Laravel, его плюсы, минусы и возможные пути развития.

Читать далее

PHP Дайджест № 222/3 (26 марта – 25 апреля 2022)

Время на прочтение4 мин
Количество просмотров6.3K

Дисклеймер: Нет, это не дайджест авторства Романа Пронского. К сожалению, у меня нет достоверной информации - будет ли выходить его дайджест далее.

Однако я взял на себя смелость временно продолжить дело Романа и написать новый дайджест за тот месяц, что прошел с выхода последнего.

Если Роман сможет и захочет далее продолжать свой дайджест - он сам решит, как использовать мой текст: взять в свой проект, как его часть или нет. На всякий случай я ставлю нумерацию дайджеста через дробь. Однако не претендуя при этом на продолжение оригинального проекта.

Читать далее

Маленький баг в тестировании на Laravel

Время на прочтение3 мин
Количество просмотров4.3K

Статья будет небольшая, даже совсем короткая. Для фанатов TDD, верящих, что фреймворки делают в небесах.

Пару часов ковырялась с тестом $response->assertJson()->assertJsonMissing(); при одинаковом содержании обеих скобок:

Читать далее

Laravel: разработка пакетов

Время на прочтение15 мин
Количество просмотров14K

Каждый разработчик рано или поздно сталкивается с необходимостью повторного использования собственного кода. В проектах PHP для этих целей создаются пакеты, устанавливаемые с помощью Composer. При этом пакеты могут быть абстрагированы от каких-либо фреймворков, либо могут быть предназначены для использования в конкретном PHP-фреймворке. В данной статье рассказывается о том, как создать PHP-пакеты для фреймворка Laravel, но материал будет полезен и тем, кто собирается разрабатывать любые другие PHP-пакеты (как публичные, так и приватные).

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

Данная статья в большей мере ориентирована на начинающих разработчиков.

Читать далее

PHP Дайджест № 222/2 (22 февраля – 25 марта 2022)

Время на прочтение4 мин
Количество просмотров7.6K

Дисклеймер: Нет, это не дайджест авторства Романа Пронского. К сожалению, у меня нет достоверной информации - будет ли выходить его дайджест далее.

Однако я взял на себя смелость временно продолжить дело Романа и написать новый дайджест за тот месяц, что прошел с выхода последнего.

Если Роман сможет и захочет далее продолжать свой дайджест - он сам решит, как использовать мой текст: взять в свой проект, как его часть или нет. На всякий случай я ставлю нумерацию дайджеста через дробь. Однако не претендуя при этом на продолжение оригинального проекта.

Читать далее

Кэш HTML на стороне NGINX с помощью Redis

Время на прочтение6 мин
Количество просмотров5.2K

Я поставил задачу сделать Кэш как можно проще, чтоб не увеличивать сложность сервиса и уровень вхождения программистов. На ум сразу приходит Varnish, и подобные инструменты выглядели заманчиво, но они кажутся оверхедом для такой задачи. Пилить микросервисы или масштабировать сервера тоже

Основная проблема - связать кэш с логикой, чтоб кэш сбрасывать только при изменениях. Если внутри Laravel или другого фреймворка мы имеем доступ к бизнес логике зависимых сущностей, то на стороне nginx у нас только параметры запроса.

Читать далее

Автоматические имена роутов Laravel

Время на прочтение4 мин
Количество просмотров4.9K

Часто разработчики при создании проектов пренебрегают именованием маршрутов по разным причинам, например, когда они вообще не обращаются к ним используя метод `route()`. Это обусловлено архитектурой приложения и в этом нет ничего зазорного. Но есть и такие проекты, где имена маршрутов являются неотъемлемой частью проекта, но случается так, что не ко всем идёт применение имён. Об этом мы и поговорим.

Читать далее

Ближайшие события

Готовимся к собеседованию по PHP: Что такое «DI», «Container», «Auto-wiring» за семь простых шагов

Время на прочтение10 мин
Количество просмотров51K

Статья написана для начинающих разработчиков на языке PHP, чтобы помочь им усвоить понятия, нужные для понимания того, как устроены и работают современные фреймворки на PHP: Dependency Injection, Container, Auto-wiring.

Автор надеется, что прочтение статьи поможет вам разобраться в этих вопросах и подготовиться к собеседованию или освоению нового фреймворка.

Статья продолжает цикл статей под условным названием "Готовимся к собеседованию".

Читать далее

PHP Дайджест № 222 (7 – 21 февраля 2022)

Время на прочтение5 мин
Количество просмотров14K


Подборка свежих новостей, инструментов, видео и материалов из мира PHP.

Приятного чтения!
Читать дальше →

9 интересных новшеств в Laravel 9

Время на прочтение7 мин
Количество просмотров16K

Я сразу как только вышла новость о релизе решил, что нужно посмотреть, пощупать и разобраться чего же изменилось. Да-да, на днях, а именно 8 февраля 2022 вышел официальный релиз Laravel 9, который включает довольно много новых улучшений. Для тех же из нас, кто не боится таких слов как alfa и beta девятая версия фреймворка давно не новость и уже в работе.

Теперь эта версия будет поддерживаться дольше (LTS) и разработчики фреймворка пришли к решению не выпускать новые выпуски каждые 6 месяцев, но делать это раз в год в феврале. Судя из расписания эта версия останется актуальной год, а обновления безопасности будут выпускаться вплоть до 2025 года.

Ниже я опишу девять нововведений, которые лично мне показались самыми интересными, конечно это не все и с более полным описанием релиза можно познакомиться на официальных ресурсах. Например, обвноление Flysystem до 3 версии я описывать не буду, думаю тут все и так понятно. Так же посоветую посмотреть группу видео от Джеффри Вея (Jeffrey Way) на эту тему.

Читать далее

Дежавю От Laravel к AdonisJs, или как поменяли исходный код в Матрице

Время на прочтение7 мин
Количество просмотров7K

Привет, Хабр.

Как и все разработчики на php, я тоже иногда сталкивался с NodeJs .
На днях просмотривая фреймворки Node столкнулся на AdonisJs . И после нескольких минут прочтения кодоа я почувствовал себя как в матрице .

Прошла черная кошка, за ней другая, такая же.

А теперь немного про AdonisJs.

Когда дело доходит до разработки веб-приложений, есть десятки фреймворков на выбор. Менее известный, но очень любимый фреймворк — AdonisJs, известный своим красивым кодом и простотой для бэкэнда.

AdonisJs — это узел. js MVC для согласованного, стабильного и выразительного кода. Адонис заботится о многих трудоемких деталях разработки, предлагая стабильную экосистему для серверных веб-приложений.

Разработчики, использующие Laravel, отмечают, что AdonisJs предлагает тот же шаблон, дизайн, структуру кодирования и интерфейс на основе команд. AdonisJs легко изучить. В этой статье я хочу познакомить вас с фреймворком и показать, с чего начать.

Читать далее

PHP Дайджест № 221 (24 января – 7 февраля января 2022)

Время на прочтение4 мин
Количество просмотров11K
.

Подборка свежих новостей, инструментов, видео и материалов из мира PHP.

Приятного чтения!
Читать дальше →

Подключение fb messenger к чату на сайте

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров2.9K

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

В ходе разработки проекта надо было подключить fb api для того что бы менеджеры сайта смогли общаться с клиентами сайта не только из админки, но и из своих профилей fb messenger.

Вот и начали работу по подключению апи к сайту. Прочитав документацию и статьи в разных сайтах понял что нигде нет полной поэтапной инструкции.

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

Я не буду углубляться на тему создания чата на сайте. По этому вопросу много написано в просторах интернета.

Допустим у нас есть сайт, с уже созданным чатом (node.js, socket.io).

Давайте разделим статью на 2 части.

1. Ресурсы, которые нужны.
2. Написание кода.

Читать далее

PHP Дайджест № 220 (10 – 24 января 2022)

Время на прочтение3 мин
Количество просмотров12K
Картинка Vincent Pontier.

Подборка свежих новостей, инструментов и материалов из мира PHP.

Приятного чтения!
Читать дальше →