• Что прочитать по ООП и паттернам для веб-разработки на PHP?

    @gerashenko
    Тут сначала надо разобраться, что вам нужно, паттерны понять или суть ооп в целом.

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

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

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

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

    Извиняюсь за ошибки, с телефона неудобно писать.
    Ответ написан
    Комментировать
  • Как грамотно реализовать функционал индивидуальных цен в Yii2?

    webinar
    @webinar Куратор тега Yii
    Учим yii: https://youtu.be/-WRMlGHLgRg
    Актуальная цена должна быть методом в модели services. И в этом методе уже уже реализовать всю магию. Думаю это будет связь с individual_price, проверка на есть ли таковая и если нет постановка базовой.
    Далее по afterFind: что мешает использовать массовое сохранение через например:
    https://www.yiiframework.com/doc/api/2.0/yii-db-ac... и не совсем понимаю зачем и как Вы тут присобачили AttributeBehavior
    Ну а с выборками из базы все верно подсказал Дмитрий Ким
    Ответ написан
    5 комментариев
  • Как продвигать сайт в поисковых системах?

    RotgarSett
    @RotgarSett
    SEO Эксперт
    Для настройки SEO для сайта необходимо выполнить следующие действия:

    Первый шаг - выявление направленности проекта:
    • коммерческий
    • информационный
    • энциклопедический
    • социальная сеть и прочее


    Далее, после того как определились с типом ресурса, выявляем важнейшие для его оптимизации факторы ранжирования. Так, например, для коммерческих проектов во главе угла стоят коммерческие факторы ранжирования, а вот для информационного проекта необходимо учитывать полноту раскрытия информации, стиль подачи и многое другое, подробнее можно почитать в этой статье на Хабре.

    Далее есть список факторов которые необходимо учитывать всем ресурсам, это технические, семантические и поведенческие факторы.

    Для начала необходимо подготовить фундамент - провести подробный анализ технических факторов помогут такие программы как Netpeak Spider или Screaming Frog (программ конечно многое множество, но эти используют чаще всего). Но, к сожалению, тулсами можно проверить не все и необходимо будет изучить матчасть и проверять многие технические аспекты руками.

    Затем переходим к семантике, это очень сложный вопрос который лучше будет описать в другом ответе, но, в двух словах, необходимо убедиться что у всех страниц сайта заполнены важные элементы семантики (title, h1 и прочее) и они соответствуют контенту страницы.

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

    В финале мы получим идеально внутренне оптимизированный ресурс и можно будет приступать к внешней оптимизации.

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

    Яндекс подсказывает как развивать сайт белыми методами и чтобы он был полезен пользователю. Все материалы можно найти:
    В Блоге Вебмастеров
    На канале Академии Яндекса
    В Хелпе Яндекс Вебмастера

    Также я думаю могут помочь эти ссылки:
    Какую стратегию продвижения лучше выбрать
    Важность внутренней перелинковки
    Где научиться SEO
    Какие темы нужно знать сеошнику
    Ответ написан
    Комментировать
  • Как правильно перенести страницы на другой url?

    RotgarSett
    @RotgarSett
    SEO Эксперт
    1- верно
    2- нет, не нужно
    3- врядли, но теоретически шанс есть. Вернутся.

    Вы все сделали и планируете сдлать верно. Более ничего не нужно.
    Ответ написан
    3 комментария
  • Как можно закрыть сайт от роскомнадзора?

    CityCat4
    @CityCat4 Куратор тега Информационная безопасность
    Внимание! Изменился адрес почты!
    Переехать в доменную зону, до которой РКН не дотягивается и быть готовым к потери аудитории из РФ.
    РКН не нужно заходить на сайт - это просто цепной песик - ему сказали "фас" - он кусает. "Фас" ему говорит суд, суд рассматривает заявление от пользователей. Какой пользователь настучит - заранее предсказать нельзя :) Техническая составляющая специально была исключена.
    Ответ написан
    2 комментария
  • Как можно закрыть сайт от роскомнадзора?

    demon416nds
    @demon416nds
    Разработчик на чем попало
    Самому ркн по большей части пофиг
    Они блокируют по решению суда
    А суд начинает рассмотрение по запросу одного из пользователей сайта. Так что ответ никак разве что вообще закрыть сайт ото всех но он тогда нафиг не нужен
    Ответ написан
    Комментировать
  • Как решить проблему с повторной иннициализацией slick.js?

    iiiBird
    @iiiBird
    Пока ты спишь - твой конкурент совершенствуется
    При повторном вызове вызывай метод setPosition
    $('.slider').slick('setPosition');
    Ответ написан
    3 комментария
  • Как определить толкового SEO специалиста?

    RotgarSett
    @RotgarSett
    SEO Эксперт
    Почитать его ответы на Тостере. :)
    Посмотреть опыт работы, присутствие в сети по тематике SEO. Посмотреть отзывы, если они есть, связаться по контактам с оставившими отзыв клиентами.

    100% методов нет. Но долгое присутствие в теме SEO (профили на сайте фрилансеров с большой и качественной историей, профили на SEO форумах, собственный сайт/блог/публикации на хабре) и отзывы с контактами клиентов на мой взгляд довольно адекватно могут отражать профессионализм специалиста.

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

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

    Например работа с юзабилити и коммерческими факторами под Яндекс - очень хороший признак. А вот использование арендованных или просто дешевых вечных ссылок в большом объеме, это уже плохо (если говорить о Яндексе).

    Использование Sape под Google (имеется ввиду зарубежное продвижение) и не использование под Яндекс скажет о том что специалист разбирается в своем деле.

    Можно связаться со специалистом голосом и задать ему вопросы (в которых специалист должен разбираться). Например: «Что такое last modified, как и для чего это используется?». «Нужно ли заполнять мета кивордс, есть ли различия у поисковиков?».
    Конечно придется самому подготовиться или где-то заказать вопросы и ответы на них. Я кстати много таких вопросов встретил здесь, на тостере.
    Ответ написан
    1 комментарий
  • Как на сайте при регистрации отсеивать не существующие emailы?

    @Ariurn
    1) Проверка с помощью регулярки (чтобы не писали абракадабру):
    function validateEMAIL($EMAIL) {
    $v = "/[a-zA-Z0-9_-.+]+@[a-zA-Z0-9-]+.[a-zA-Z]+/";
    return (bool)preg_match($v, $EMAIL);
    }

    2) Проверить наличие MX-записи в домене (гарантия того, что такой домен существует и обрабатывает поступающие почтовые запросы):
    if (!checkdnsrr($domain, 'MX')) {
    // domain is not valid
    }

    Но учтите, что всё это не является достаточным условием того, что такой e-mail существует на данном домене.
    Ответ написан
    5 комментариев
  • Как обратиться к protected методу другого класса?

    Denormalization
    @Denormalization
    Если не хочется лезть в чужой код и менять его, и уж тем более заниматься интимными вещами через Reflection, то правильнее всего будет создать свой класс отнаследованный от нужного, и в своем классе добавить public метод который будет вызывать protected предка.

    Таким образом не нужно будет менять чужой класс, при этом сохранится доступ ко всему функционалу базового класса.
    Ответ написан
    2 комментария
  • PDO или ORM в PHP?

    @Nc_Soft
    Простые запросы (их процентов 80) орм упрощают конечно, а вот если надо нестандарт, то проще нативным sql сделать. Имхо конечно.
    Ответ написан
    Комментировать
  • Чем бесплатные движки (PhpBB) хуже платных?

    Moskus
    @Moskus
    Разница в том, что при использовании коммерческих продуктов вы верите в поддержку разработчиков, а при использовании opensource - в самостоятельную поддержку, своими силами, или в поддержку какой-то сторонней компании, которая специализируется на коммерческих услугах пользователям opensource. Это - фундаментальная разница.
    При этом, в общем случае, нет оснований считать, что коммерческая поддержка автоматически означает качество - криворукие программисты и админы есть и на зарплате у крупных фирм.
    Остальное вообще никак прямо не связано с тем, является ли продукт коммерческим.
    Ответ написан
    3 комментария
  • Java и Android или C# и Unity - что выгоднее?

    @LiguidCool
    Мне 31 год, есть семья, есть основная работа

    время только по вечерам (ночам) и в выходные дни

    Где проще и выгоднее в моей ситуации себя реализовать?


    На основной работе. Без шуток.

    PS
    Если геймдев, Я бы выбрал Unity. Для всего остального есть MasterCard (нет) ... Cordova и прочее.

    PSS
    Гемдев за редким исключением это не то, что можно сделать в одно лицо.
    Ответ написан
    2 комментария
  • Каковы плюсы и минусы работы в офисе с часовой оплатой?

    gobananas
    @gobananas
    finishhim.ru
    Зависит от того что за проекты будут. Делали вы раньше такие или нет. Потому что когда новая технология или проект разработчик оценивает сроки плюс-минус километр потому что непонятно насколько быстрой пойдёт изучение. Т.е. есть риск сильно выбиться за часы и или заказчика подвести или самому просесть по деньгам.

    Ну и правильно заметил Pyatachok всё зависит от организации работы. Я общался с людьми которым платили почасовку, но давали проект и говорили что ты его должен сделать за 4 часа и платим мы тебе за 4 часа, а там работы на 8-10 часов было.
    Ответ написан
    2 комментария
  • Каковы плюсы и минусы работы в офисе с часовой оплатой?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Это казино помноженное на Ваш опыт+репутацию.
    Если повезет, то возьмете много проектов и будите кушать хорошо, а если нет?
    Ответ написан
    Комментировать
  • Сертификация PHP программиста. Что выбрать? И стоит ли вообще?

    opium
    @opium
    Просто люблю качественно работать
    нет не ценятся на фрилансе сертификаты
    ценятся отзывы о вашей работе
    Ответ написан
    Комментировать
  • Как исправить генерацию URL в YII2?

    webinar
    @webinar Куратор тега Yii
    Учим yii: https://youtu.be/-WRMlGHLgRg
    Обратите внимание на https://www.urldecoder.org
    %3D это =
    Так что надо искать где проблема. В коде, что Вы привели ее нет. Попробуйте вывести
    var_dump($user->password_reset_token);
    Ответ написан
    8 комментариев
  • Установка yii 2 на OSPanel?

    evgensenin
    @evgensenin
    Yii2 || Laravel, vue & nuxt
    вот как раз какой-то .htaccess и должен быть.
    Ответ написан
    1 комментарий