Обновить
64K+

PHP *

Скриптовый язык общего назначения

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

Рекордсмены в Fusc последовательности

Уровень сложностиСредний
Время на прочтение16 мин
Охват и читатели2K

Анализ подходов к решению олимпиадной задачи по программированию, связанной с диатомической числовой последовательностью Штерна. Или как незадачливый программист решил стряхнуть пыль со своих навыков и попробовал решить задачу из разряда простых с сайта https://www.spoj.com/

Читать далее

Как добавить свой повторяемый элемент интерфейса в класс HTMLHelper Joomla 4+

Время на прочтение5 мин
Охват и читатели1.1K

В API Joomla есть полезный инструмент - класс HTMLHelper. Он выводит HTML-элементы интерфейса с нужными параметрами: модальные окна, аккордеоны, табы, изображения и т.д. Для рендера мы передаём все нужные данные: заголовки окон, содержимое табов, атрибуты изображений.

Плюс использования HTMLHelper в Joomla - это его универсальность, оторванность от контекста, возможность использования логики при рендере в зависимости от вводных данных, его можно использовать везде. Но что если нам нужно создать свой собственный класс?..

Читать далее

Как сделать регистрацию и аутентификацию на сайтах под CMS ModX с помощью Exolve

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

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

В этой статье речь пойдет о ресурсе, основанном на CMS ModX. Обеспечивать же безопасность данных пользователей и самого ресурса поможет API-платформа МТС Exolve. Разберемся, что это за сервисы.

Читать далее

Дайджест новостей по Symfony за октябрь'2024 с Кириллом Несмеяновым

Уровень сложностиСредний
Время на прочтение10 мин
Охват и читатели4.8K

Обзор новостей по Symfony за октябрь. В этом обзоре Кирилл Несмеянов разберет нововведения: от полезных правил валидации Week и WordCount до именованных сериализаторов и улучшений в компоненте Messenger. Узнаете про обновления в системе переводов, работе с контейнером и Expression Language. А еще - про возможность отправлять уведомления прямо на рабочий стол. Самое время узнать, какие инструменты добавились в арсенал Symfony-разработчика!

Читать далее

Flutter Push-уведомления, том числе в Web

Уровень сложностиСредний
Время на прочтение13 мин
Охват и читатели10K

Добрый день!

Хотел написать статью, обобщающую то, что я нашёл в интернете. Может кому-то она покажется слишком простой, может ненужной, а может наоборот вызовет обсуждение, на что я крайне надеюсь.

В двух словах о чём статья:

С нуля мы создадим flutter-проект с подключением к push-уведомлениям. Будем отправлять уведомления не только на Android, IOS, но и на наш веб-сайт, который может рассылать уведомления в т.ч. на мобильные устройства. Нам потребуется дополнительно лишь небольшой хостинг с mysql БД и php.

Читать далее

Применение статических анализаторов архитектуры на примере гексагональной архитектуры

Уровень сложностиСредний
Время на прочтение17 мин
Охват и читатели8.7K

Отсутствие четкой структурированной архитектуры проектов — не редкость в ИТ. Одни этим пренебрегают из-за маленького масштаба проекта, другие — из-за сжатых сроков разработки, третьи — из-за отсутствия экспертизы в этом вопросе. Вместе с тем, движение по этому пути — практически всегда история с «отложенными последствиями»: со временем такие проекты становится сложно поддерживать, масштабировать, администрировать и фиксить. 

Меня зовут Никита Дергачев. Я Teamlead COOL TEAM в MedTech компании СберЗдоровье. В этой статье я расскажу, почему важно структурировано выстраивать архитектуру проектов, а также покажу на примере, с помощью каких инструментов можно отслеживать соответствие архитектуры изначальным требованиям.

Читать далее

Реализация горизонтального кеширования в PHP с Redis Cluster

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели4.4K

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

Сегодня мы рассмотрим одну из задач высоконагруженных приложений — горизонтального кеширования. Когда система начинает испытывать давление под наплывом пользователей, стандартный кеш не всегда справляется. В таких ситуациях на помощь приходит Redis Cluster. Рассмотрим, как масштабировать кеширование в PHP с помощью Redis Cluster, чтобы распределить нагрузку, повысить отказоустойчивость и не потерять в производительности.

Читать далее

Битрикс: оптимизация сервиса, который помогает устранять опасности

Уровень сложностиСредний
Время на прочтение12 мин
Охват и читатели3.3K

Представьте: горячий металл, мощные машины, сотни работников — наше производство постоянно подвержено различным рискам. И как мы превратили эти вызовы в возможности? Этот рассказ будет о том, как мы воплотили в жизнь инновационную для компании систему сбора заявок об опасностях, о наших успехах, о трудностях, с которыми мы столкнулись, и о том, какие уроки мы извлекли из этого опыта. Давайте окунемся в мир цифровых решений и безопасности труда вместе!

Далее рассказ пойдет об одном из наших сервисов, но опыт и выводы будут полезны и при решении других задач.

Статья будет полезна архитекторам, руководителям и разработчикам.

Читать далее

Настраивать xdebug для первого запуска не нужно вообще! Как в Phpstorm запустить отладку за минуту и без браузера

Время на прочтение4 мин
Охват и читатели17K

Многие считают, что добиться успешного запуска отладки xdebug после его установки - тяжело и мучительно. Но на самом деле, сделать первый запуск можно менее чем за минуту, не делая настройки и даже не прикасаясь к конфигурационным файлам .ini (php.ini/xdebug.ini). Как это сделать? Об этом и пойдет речь в этой статье.

Читать далее

Laravel в 2024: статистика и тренды

Время на прочтение2 мин
Охват и читатели6.7K

Нашел интересную статью со статистикой по Laravel за 2024 год и решил поделиться ей с вами. Признаюсь честно, когда я начинал работать с Laravel (лет 5 назад), я и представить не мог, насколько этот фреймворк станет популярным. Давайте посмотрим, что говорят цифры!

Читать далее

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

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели11K

Всем привет! Меня зовут Иван Леонов, и я тимлид в AGIMA. А до этого долгое время был рядовым разработчиком в нашем цехе PHP. Хочу рассказать, чего ожидал от новой должности и что в итоге получил. Надеюсь, смогу кого-то вдохновить на дальнейший профессиональный рост, а кого-то — наоборот, отговорю от ненужного карьерного витка. Тут не будет прикладных советов по управлению, зато будет простая человеческая история, из которой вы сможете сделать собственные выводы.

Читать далее

Внедрение методики решения проблем 8D на производственном предприятии в виде SRM/ERP-систем/Часть 1

Уровень сложностиПростой
Время на прочтение12 мин
Охват и читатели9.8K

На подготовку данной заметки меня натолкнула картина, которую я наблюдал совсем недавно в скоростном, двухэтажном поезде АО «ФПК» по направлению Новороссийск-Москва. Состав из 15 новых вагонов, произведенных на Тверском вагоностроительном заводе (ТВЗ, входит в состав АО «Трансмашхолдинг»). Серийно их делают с 2011 года, на рельсы они встали в 2013.

Читать далее

Как Elasticsearch поломал сборки и «обнулил» звёзды в Github

Уровень сложностиПростой
Время на прочтение3 мин
Охват и читатели15K

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

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

В какой-то момент от коллег поступает информация о том, что официальная библиотека elasticsearch-php в момент сборки через composer install перестала устанавливаться.

Читать далее

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

PHP и Laravel дайджест новостей за октябрь 2024 года

Время на прочтение13 мин
Охват и читатели5.4K

В октябрьском дайджесте PHP и Laravel: выход PHP 8.4.0 RC3 и подготовка к финальному релизу 21 ноября, важные обновления безопасности в PHP 8.2.25 и 8.3.13, множество улучшений в Laravel 11, включая новые функции для работы с Enum, расширенные возможности middleware, оптимизации производительности Schema и улучшенное логирование очередей. Также рассмотрены новые атрибуты RouteParameter и CollectedBy, добавление директивы @bool в Blade и другие изменения. Будьте в курсе новостей!

Читать далее

PHP: путешествие от «Hello World» до фреймворков

Уровень сложностиПростой
Время на прочтение15 мин
Охват и читатели28K

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

Читать далее

Валидация в Битрикс: как упростить рутину

Уровень сложностиСредний
Время на прочтение11 мин
Охват и читатели9.3K

Привет! Меня зовут Никита, я разработчик в компании Битрикс24. В разработке мы давно стремимся к единообразию. Это позволяет нам уменьшить количество типовых ошибок, снизить затраты на производство и повысить качество.

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

Часто случается, что необходимо проверить сущность на «правильность», при этом не привязываясь к бизнес‑логике. К примеру, если свойство класса представляет собой id пользователя, то становится очевидным, что значение этого свойства не может быть меньше, чем 1.

Читать далее

Как я делала читалку форматов EPUB, FB2, DOCX для онлайн-библиотеки

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

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

Читать далее

Внедрение Doctrine ORM в Wordpress

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели3.9K

Статья про то, как можно весьма не сложно внедрить Doctrine ORM в ядро CMS Wordpress без потери производительности. Все вопросы и утверждения по типу: «А зачем», «А почему», «Да это только наложит дополнительный оверхэд и ничего с этого не выйграешь», возможно, будут проигнорированы:)

Читать далее

Как добавить свой таб или поле в интерфейс Joomla с помощью плагина. «Joomla way»

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели1.1K

Задачи могут быть самые разные: поле аватара для пользователя в com_users, дополнительный таб в форму редактирования материала, поле связи одной сущности с другой и т.д. Сразу оговорюсь, что бывает и "non-Joomla way" - то есть подходы, которые не предполагаются ядром CMS, но при этом и явно не запрещаются. Сейчас речь пойдёт о традиционном.

Читать далее

Автоматизация CQC на CI

Уровень сложностиСредний
Время на прочтение13 мин
Охват и читатели3K

В эти дни проходит внутренняя конференция Aventus IT. И я там был, мёд пиво пил… Шучу. Выступал на тему автоматизации контроля качества кода. И хочу представить вам статью по материалам своего выступления.

Сегодня было два прекрасных доклада про тесты на проекте. Порадовало, что услышал в них некоторые свои идеи. Например, про преимущества запуска тестов на CI вместо локальной машины. Оказывается, что я не один такой.

Со своей стороны, хочу поговорить, про контроль качества кода помимо тестов.

Читать далее