Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Я хочу получать рассылки с лучшими постами за неделю
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр
Управляйте маятником, чтобы построить самую высокую (и устойчивую) башню из падающих сверху постов. Следите за временем на каждый бросок по полоске справа: если она закончится, пост упадет мимо башни.

Башня

Аркады, Строительство, На ловкость

Играть

Топ прошлой недели

  • AlexKud AlexKud 38 постов
  • SergeyKorsun SergeyKorsun 12 постов
  • SupportHuaport SupportHuaport 5 постов
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая кнопку «Подписаться на рассылку», я соглашаюсь с Правилами Пикабу и даю согласие на обработку персональных данных.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня

PHP + Web

С этим тегом используют

Программирование Программист IT Javascript HTML Web-программирование Разработка Сайт Веб-разработка Дизайн Все
38 постов сначала свежее
drimgo
drimgo
2 года назад

Веб-разработка и почему PHP в ней лидирует⁠⁠

Привет, Пикабу! Сегодня я хочу поговорить с вами о том, почему PHP является одним из самых популярных языков программирования в веб-разработке.

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

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

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

PHP также поддерживает множество баз данных, включая MySQL, PostgreSQL и Oracle. Это позволяет разработчикам создавать мощные и эффективные веб-приложения, которые могут обрабатывать большие объемы данных.

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

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

#drimgostudio #созданиесайтов #разработкасайтов #купитьсайт #сайтподключ #отзывы #верстка #лендинг #вебдизайн #веб

Показать полностью
[моё] IT Веб-разработка Web PHP Сайт Текст
17
Sergeytolkachyov
Sergeytolkachyov
2 года назад

Dependency Injection Containers (DI контейнеры) в Joomla 4⁠⁠

Этот текст - перевод статьи из нового портала документации для разработчиков Joomla, раздел "Основные концепции".

Введение

Joomla 4 внедряет практику контейнеров внедрения зависимостей (DI контейнеры, DIC) в Joomla. Эта статья призвана объяснить, почему мы внедряем их и как их использовать в Joomla.

DI контейнеры уже давно существуют в экосистеме PHP для поддержки целей внедрения зависимостей. Например, Symfony представила эту концепцию в 2009 году.
Есть несколько причин, по которым пришло время внедрить их в Joomla 4:
1. Тестирование — одной из тем Joomla 3 были глючные релизы. Нам нужно иметь возможность тестировать классы и компоненты более простым способом. Внедрение зависимостей позволяет значительно упростить внедрение классов Mock, что, мы надеемся, позволит нам уменьшить количество ошибок.

2. Нужно уменьшить количество магии в Joomla - Joomla имеет большое количество "волшебных" файлов, названия которых нужно угадывать. Это увеличивает количество времени, которое люди, плохо знакомые с Joomla, тратят на изучение соглашений по именованию файлов. Предоставление конкретного класса в расширениях позволяет нам легко тестировать совместимость расширений с другими расширениями (например, категориями и ассоциациями).

Глобальный контейнер
Внедрение глобального контейнера зависимостей очень слабо заменяет класс Factory (ex. JFactory). Однако его не следует путать с прямой заменой. Так, например, в ваших контроллерах в CMS вместо \Joomla\CMS\Factory::getDocument(); стоит использовать $this->app->getDocument();.

Это использует внедренное приложение и поэтому упрощает тестирование.

Ссылки по теме на Хабре:

- Опубликован скорректированный план выпуска релизов Joomla 4 и Joomla 5

- Распространенные ошибки при написании плагинов Joomla 4

Создание объекта в контейнере

Чтобы поместить что-то в глобальном DI-контейнере Joomla проще всего передать анонимную функцию. Пример для логгера ниже:

Dependency Injection Containers (DI контейнеры) в Joomla 4 Разработка, Joomla, Ооп, Di, PHP, Cms, Framework, Web, Web-программирование, Длиннопост

Функция share принимает два обязательных параметра и необязательный третий параметр:

1. $key - имя сервиса (dataStore key) - почти всегда является именем класса, который вы создаете.

2. $value - Анонимная функция принимает единственный параметр — экземпляр контейнера (это позволяет вам получать любые зависимости из контейнера). return — это сервис, который вы хотите поместить в контейнер.

3. $protected - (необязательный параметр) - это булев параметр, определяет, защищена ли служба от перезаписи (т. е. разрешено ли кому-либо еще переопределять ее в контейнере). Как правило, для основных служб Joomla, таких как объекты сессии (Session), это true.


Теперь рассмотрим более сложный пример:

Dependency Injection Containers (DI контейнеры) в Joomla 4 Разработка, Joomla, Ооп, Di, PHP, Cms, Framework, Web, Web-программирование, Длиннопост

Здесь видно, что мы добавили две вещи — начали использовать зависимости (роутер API получает приложение API из контейнера) и мы также создали алиас для ApiRouter (в Joomla 4 существует 5 типов приложений - Application - Site, Administrator, Cli, API и Installation, а также могут быть созданы свои типы - Т.С.). Это означает, что контейнер создает экземпляр ApiRouter тогда, когда распознает использование класса.  Зато в нашем коде для простоты мы сможем запустить следующий вызов, чтобы получить роутер (That means whilst the container recognises that if it needs to build an ApiRouter instance it can do that. But in our code to keep things simple we can also run to retrieve our router).


Factory::getContainer()->get('AmazingApiRouter');


В то время как в Joomla наши провайдеры могут выглядеть более сложными, потому что логика создания объектов внутри анонимной функции более сложна - все они следуют этой базовой идее.

ПровайдерыПровайдеры в Joomla — это способ регистрации зависимости в сервис-контейнере. Для этого создайте класс, реализующий Joomla\DI\ServiceProviderInterface.

Это дает вам метод регистрации, который содержит контейнер. Затем вы можете снова использовать метод share, чтобы добавить любое количество объектов в контейнер. Затем вы можете зарегистрировать их в контейнере с помощью \Joomla\DI\Container::registerServiceProvider. Вы можете посмотреть, как мы регистрируем все сервис-провайдеры, здесь, в методе \Joomla\CMS\Factory::createContainer.

Dependency Injection Containers (DI контейнеры) в Joomla 4 Разработка, Joomla, Ооп, Di, PHP, Cms, Framework, Web, Web-программирование, Длиннопост

Контейнер компонентаКаждый компонент также имеет свой собственный контейнер (который находится в разделе администратора (administrator section) Joomla). Однако этот контейнер не подвергается воздействию. Он нужен только для того, чтобы получить системные зависимости и позволить классу представлять ваше расширение. Этот класс является классом Extension и как минимум должен реализовывать интерфейс соответствующего типа расширения. Например, компонент должен реализовать \Joomla\CMS\Extension\ComponentInterface (libraries/src/Extension/ComponentInterface.php). Для получения полной информации о реализации в Вашем расширении мы рекомендуем обратиться к официальной документации Joomla «Разработка компонента MVC для Joomla 4».

Использование контейнера компонента в другом расширении

Вы можете легко получить контейнер другого расширения через объект CMSApplication. Например, Factory::getApplication()->bootComponent('com_content')->getMVCFactory()->createModel('Articles', 'Site');

Получите контейнер com_content, получите MVC Factory и получите ArticlesModel фронтенда Joomla. И это будет работать в любом расширении во фронтенде, бэкэнде или API Joomla (в отличие от старого метода LegacyModel::getInstance()).

ДополнительноВ документации Joomla Framework есть отличный пример того, почему внедрение зависимостей полезно для вашего приложения и как DIC помогает его структурировать. Читать на GitHub.

От переводчикаЗамечания и пожелания по переводу приветствуются.

Показать полностью 3
[моё] Разработка Joomla Ооп Di PHP Cms Framework Web Web-программирование Длиннопост
0
22
TheTeaLover
TheTeaLover
2 года назад
Web-технологии
Серия Туториалы по бэкенд разработке

Введение в бэкенд для чайников⁠⁠

Хочу сделать серию уроков по серверной разработке для новичков. Вот первый ролик

[моё] Web IT PHP Nginx Туториал Программирование Linux Видео YouTube
11
Партнёрский материал Реклама
specials
specials

Сколько нужно времени, чтобы уложить теплый пол?⁠⁠

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

Попробовать

Ремонт Теплый пол Текст
nikitavas
2 года назад

Платформа для разработки ERP учетных систем (бесплатно)⁠⁠

Всем привет.

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

Кому надоело вести документацию в Excel или Access, а 1С еще дорого, но хочется для себя использовать полноценную базу данных.

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


Выбрал такое трехзвенное решение:

JS(JQuery) - Сервер приложений(Apache+PHP) - БД(MySQL или MariaDB)

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


В результате получилось решение, где можно по быстрому накидать таблиц, создать также быстро UI для них(однотипное) и далее сосредоточиться только на написании прикладного кода.

Готовые объекты для форм, таблиц, прикладного кода, отчетов. CRUD, фильтрация, сортировка из коробки. Для манипуляций с данными сделана надстройка в стиле Excel (устанавливаете нужные фильтры и работаете с таблицами). SQL учить особо не надо, только представлять какие данные в каких таблицах.


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

Есть готовые примеры, которые можно смотреть как сделано и делать наподобие, лишнее можно выпилить. На полноценную документацию сил не хватило, честно говоря уже выдохся. Весь код открыт, даже кое-где есть комментарии. Файл с описанием внутри архива (PDF).

Кодинг через веб есть, но это блажь, можно отключить и кодить в вашей любимой IDE, файлы объектов (форм, таблиц, классов, отчетов в отдельных каталогах).

Все весит 10Mb, без codemirror около 5Mb.

ЯП на фронте Javascript(JQuery), на сервере PHP в чистом виде практически. Это чтобы не зависеть от перехода на новые версии чего либо, т.к. вам нужно будет, чтобы работало как можно дольше без обновлений, такая специфика учетных систем.

Теоретически должно работать даже на Astra Linux, но я не пробовал.


Размещаю небольшие демонстрации на видео. Там же ссылка на скачивание (во втором видео demo2).

https://www.youtube.com/watch?v=ONOFC8kjtTU

https://www.youtube.com/watch?v=G34ZniBclsk

Показать полностью 2
[моё] Программирование Linux Разработка Erp Бесплатно PHP Javascript Web IT Видео YouTube Длиннопост Mysql
4
Sergeytolkachyov
Sergeytolkachyov
2 года назад

Создание модулей с учётом новой структуры Joomla 4⁠⁠

Joomla 4 "под капотом" претерпела немало изменений относительно предыдущих версий. Её кодовую базу сообщество разработчиков регулярно подтягивают до современных реалий, вводя актуальные технологии в ядро CMS. Так, например, если раньше загрузка классов была вариациями на тему include, то в Joomla 4 появился лоадер, приведённый к PSR-4. Ядро CMS переводится на концепцию сервис-провайдеров, внедрены DI-контейнеры. Эти изменения влекут за собой изменения в структуре компонентов, модулей и плагинов.

В данной статье пойдёт речь о том, как создать модуль для Joomla 4 с новой структурой файлов и классов. Как создать новый (или апгрейдить старый) модуль так, чтобы он ещё долго прослужил на Joomla 4 и Joomla 5?
Статья на Хабре

Joomla Cms Разработка Веб-разработка PHP Web Web-программирование Текст
9
85
Y2k18
Y2k18
3 года назад
IT-юмор

Извините, работник не найден⁠⁠

Знакомый пхпшник работает со Штатами на удалёнке. Соответственно работает ночью. Как-то зашёл к нему в гости, разумеется, с бухлом, кудаже без него :) И что-то мы с ним так засиделись хорошо, аж до будильника. А на будильнике у него время - 4.04 утра... Говорил, как-то по приколу поставил, да так и пошло.

[моё] Юмор IT юмор Разработка Web PHP Будильник Текст
10
neigepremiere
3 года назад

Хочу сделать свой первый сайт⁠⁠

поучив html и css сверстал одностраничник, но что дальше делать не имею никакого понятия. Как его загрузить на сервер? как вносить изменения? куда и как записывать данные посылаемые c сайта (имею ввиду почту и номер телефона)? не смог найти толковой информации! Куча статей дающее общие представления, но ничего конкретного или пишут что нужно знать пхп со стажем 1 года и еще 5 фреймворков. Действительно ли нужно выучить пхп и фреймворки для того чтобы создать обычный лендинг и разобраться как это работает? посоветуйте где новичку взять информацию или книгу где по-шагово есть объяснения как разобраться с бекэндом! Немного знаю java(писал калькуляторы и конверторы) . А то про самое интересное не могу узнать толком. Пожалуйста без желчи)))

[моё] Backend Web Web-программирование Программирование PHP Текст
22
Cocok.cobaku
Cocok.cobaku
4 года назад

Проблема с OpenCart... занялся самообучением, емае. РЕШЕНО!⁠⁠

Добрый день, пикабушники.

Решил-таки освоить новый навык и тут же столкнулся с проблемой. Как водится, гуглил проблему, искал на форуме ОС и других, но увы, таких нубских ошибок нет. Прошу помощи у вас.

Коротко о проблеме, не могу установить опенкарт, запускаю конфигурацию и, после ввода необходимых данных, выдает ошибку ниже:

Warning: mysqli::__construct(): (HY000/1045): Access denied for user 'root'@'localhost' (using password: NO) in D:\Torrents\openserver\OpenServer\domains\Opencart.loc\system\library\db\mysqli.php on line 7Warning: DB\MySQLi::__construct(): Couldn't fetch mysqli in D:\Torrents\openserver\OpenServer\domains\Opencart.loc\system\library\db\mysqli.php on line 10Warning: DB\MySQLi::__construct(): Couldn't fetch mysqli in D:\Torrents\openserver\OpenServer\domains\Opencart.loc\system\library\db\mysqli.php on line 10Notice: Undefined variable: mysql in D:\Torrents\openserver\OpenServer\domains\Opencart.loc\install\controller\install\step_3.php on line 281Notice: Trying to get property of non-object in D:\Torrents\openserver\OpenServer\domains\Opencart.loc\install\controller\install\step_3.php on line 281

Если чо, работаю не на хостинге, само собой)

Opencart Web Web-программирование PHP Нуб Помощь Текст
23
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии