Маршрутизация запросов PHP для начинающих. Роутинг в PHP

Поділитися
Вставка
  • Опубліковано 6 лип 2024
  • Сегодня мы глубоко погрузимся в мир организации маршрутизации на PHP без привлечения фреймворков. Разберем различные варианты, начиная от базового уровня и до более сложных.
    Мы рассмотрим использование роутинга от Symfony, чтобы выявить преимущества и возможности этого мощного фреймворка. Кроме того, мы ознакомимся с одной из библиотек, предоставляющих собой гибкие инструменты для настройки маршрутов.
    Не обойдем вниманием и файл htaccess, изучив различные настройки, которые можно использовать для улучшения маршрутизации. Погружение в правило redirect в конфигурации nginx также будет частью нашего урока.
    Присоединяйтесь к нам, чтобы узнать о различных методах организации маршрутизации на PHP, получить полезные знания о Symfony и других библиотеках, а также освоить настройки htaccess и правила redirect в nginx для улучшения вашего проекта!
    #php #программирование #обучение #обучающие #routing
    00:00 Программирование без роутинга
    01:25 Использование GET параметров для роутинга
    03:29 Современная модель роутинга
    07:42 Настройка Apache2 и nginx (редиректы на index.php)
    12:38 Использование сторонних библиотек для роутинга
    17:20 Symfony routing компонент
    20:00 Генератор URL адреса по настройкам маршрутизации

КОМЕНТАРІ • 21

  • @bukachuk_php
    @bukachuk_php  Місяць тому

    Как сделать блог на чистом PHP для начинающих можно посмотреть здесь ua-cam.com/video/IpKWU8YaTwg/v-deo.html

  • @MTSE_
    @MTSE_ 3 місяці тому +1

    Спасибо. Исчерпывающая информация по роутингу.

  • @groza-a-a
    @groza-a-a 5 місяців тому +2

    Тру стори. Наткнулся на канал и довольный, слушаю уроки. И все время не дает покоя что-то. И голос знакомый и имя автора тоже. Спустя 3 дня, из глубин памяти, дошло. Михаил, мы с вами общались в рамках менторства, сильно мне помогли. Забавно, как тесен мир) Спасибо за ваш труд!

  • @LOKI3st
    @LOKI3st 5 місяців тому

    Классно! Доходчиво и как всегда полезно ! Сразу видно, что автор трудится на реальных проектах ! Успеха в развитии канала.

  • @user-du6ns4ww6o
    @user-du6ns4ww6o 5 місяців тому +2

    Михаил у вас сильная база по оптимизации sql запросов, вы однажды помогали мне на моей первой работе, спасибо. Я к тому что будет интересно смотреть как вы делаете запросы на современных фреймворках чепез ORM или нативно, как вариант Postgressql будет интересен.

    • @bukachuk_php
      @bukachuk_php  5 місяців тому +1

      Я больше по mysql, есть планы записать что-то по этому поводу, но нужно найти время)) но там на первом этапе в основном многие принципы похожи, если вы используете фреймворк, тут нужен баланс, тк если в начале проекта упираться на оптизацию, а проект например какой-либо стартап с малой начальной нагрузкой, то это будет преждевременная оптимизация, что является по определению вредным, тк вы потратите много времени=денег на оптимизацию, когда конкурент уже построит MVP и начнет собирать клиентов, просто купив еще один сервер. Обычно проблемы оптимизации решаются на проекте по мере их поступления, конечно же если это рефакторинг или ожидаемый траффик известен и он большой, то нужно писать запросы как минимум с Query Builder с самого начала плюс проводить нагрузочное тестирование итд.

    • @user-du6ns4ww6o
      @user-du6ns4ww6o 5 місяців тому

      @@bukachuk_php в основном сейчас вижу большие нагрузки при формировании отчётности, налоги, подсчеты планов и фактически за год по многим предприятиям и большое количество под отчетов точнее на основании их, всё это крутится на Oracle, там скорости выше но даже при всём этом он не тянет, отчёты формируются по 12 часов. И мне интересно узнать у вас как бы вы сделали если бы к вам пришёл json массив в котором 65 тысячи объектов, как бы вы разбили его на чанки для отдачи базе?

    • @bukachuk_php
      @bukachuk_php  5 місяців тому

      Так мне честно говоря сложно ответить, это нужно анализировать данные, запросы итд. У меня был один раз проект где было достаточно много данных, их складывали в MongoDB а потом использовали MongoDB Aggregate framework который в ней есть и формировали промежуточные данные для отчетов и складывали в mysql, далее уже с дашборда пользователя читали данные из SQL с группировками итд. То есть часть работы выполняла MongoDB по формированию данных (это делалась там типа раз в 5-10 минут) и таким образом статистика поступала в кабинет с небольшой задержкой и это допустимо. То есть тут возможен вариант использовать другое предварительное NOSQL хранилеще и из него формировать промежуточные данные

  • @user-xh9kp4sz8p
    @user-xh9kp4sz8p 5 місяців тому

    спасибо за видос

  • @gendu1337
    @gendu1337 Місяць тому +1

    Здравствуйте, у вас менторство? Если да, то как можно с Вами связаться? Спасибо

    • @bukachuk_php
      @bukachuk_php  Місяць тому

      Вы можете написать на почту канала из описания или телегу @bukachuk

  • @user-du6ns4ww6o
    @user-du6ns4ww6o 5 місяців тому

    Михаил скажите почему нужно ставить php fpm с nginx?

    • @bukachuk_php
      @bukachuk_php  5 місяців тому

      связка nginx + fpm работает быстрее и переваривает большие нагрузки, чем apache2, тк сам по себе nginx достаточно легкий по потребляемым ресурсам, поэтому если проект серьезный и с высокой нагрузкой, то определенно нужно ставить nginx + fpm

  • @catsapp
    @catsapp 5 місяців тому +1

    Нормальное видео?

    • @user-du6ns4ww6o
      @user-du6ns4ww6o 5 місяців тому

      Да полезное для понимания, особенно когда раскрывается тема настройке сервера на Apache.

  • @catsapp
    @catsapp 5 місяців тому

    Че такое $_GET['act']

    • @bukachuk_php
      @bukachuk_php  5 місяців тому

      Это один из элементов глобального массива $_GET в который сервер положит все переменные из GET запроса, то есть например при адресе запроса /index.php?act=users&id=1 (начинается со знака вопроса, далее через амперсант в формате ключ=значение), в итоге массив будет содержать в себе 2 элемента в данном случае 1. $_GET['act'] который равен users соответвенно, и $_GET['id''] который равен 1, чтобы посмотреть полное содержимое массива, можно просто вывести print_r($_GET); и там посмотреть содержимое

    • @catsapp
      @catsapp 5 місяців тому

      ладно понял @@bukachuk_php

  • @alexdreamer11
    @alexdreamer11 3 місяці тому +1

    Ни хрена не понял, рябит в глазах от такой резкой смены кадров. Думал роутинг для начинающих, оказалось демонстрация мастерства ввода кода с клавиатуры. Для кого рассказывал не понятно. Видно, что автор отлично подкован в программировании на PHP, но блин. Очень прошу, запиши другое видео про роутинг для НАЧИНАЮЩИХ, расскажи последовательно с чувством, толком с расстановкой. Пожалуйста.

    • @bukachuk_php
      @bukachuk_php  3 місяці тому

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

    • @alexdreamer11
      @alexdreamer11 3 місяці тому

      @@bukachuk_php Например сначала простой роутинг настроить потом по сложнее потом с плагином настроить. Хотелось бы как-то вдумчиво с разьяснением написать примеры. У вас получилось быстренько пробежался в двух словах про каждый рассказал. Мне трудно сказать какой именно момент не понятен, мне ни чего не понятно из этого видео. Я искал как сделать роутинг на php, но пока нормально ни кто не рассказал. Спасибо что ответили.