Несколько методов одной строкой реализуется через возврат $this в методе.
Паттерн синглтон это признак дурно-пахнущего кода. Зачем User-у синглтон, вообще не понимаю. Видимо, кто-то начитался паттернов и налепил их куда не надо, как я писал тут.
На самом деле наоборот: ты можешь конструировать авто и не знать названий запчастей, ты должен делать механизмы, знать как запчасть работает, уметь конструировать запчасть, а после прочтения, узнать её название. Немного утрировано, конечно.
Данные не репрезентативны, потому что завтра все может изменится, на изучение технологии можно потратить 6 месяцев - год, а когда выучишь, поймешь, что сейчас на нем никто уже не пишет.
Популярность Yii обусловлена низким порогом вхождения, и тем, что одна из первых документаций на русском, а т.к. наши разработчики именуют переменные $summa = $tovar['cena'] - $skidka; то Yii им как бальзам на душу, можно и поговнокодить.
Yii остался только у нас, если зайдете на odesk/upwork там все пишут либо на laravel, либо на symfony.
https://www.google.ru/trends/explore?q=laravel,zend,yii,symfony---------- Добавлено 04.02.2017 в 14:00 ----------
Да вот за тем и советую, что Laravel и Symfony слишком похоже, а расширять кругозор всегда нужно.
Рамарио, все зависит от ваших знаний. До того, как вы начнете на практике применять паттерны ООП, и не поймете их минусы и плюсы, я советую не читать книг по паттернам, и не использовать фреймворки, иначе случится паттерн головного мозга, и паттерны будут применяться не по назначению, а просто потому, что вы их знаете, вы будете лепить их к месту и не к месту. Читая книгу по паттернам, единственное что вы должны извлекать нового из этой книги — это названия паттернов. Все остальное вы должны были знать и применять на практике ещё до открытия книги. Такого мнения придерживаюсь не только я, но и несколько людей, ведущих разработчиков.
Вы можете заглядывать в нутро фреймворка, смотреть как он работает, но не писать на нем, иначе рискуете переступить этап осознания работы интерпретатора, оптимизации кода, понимания работы кода, и просто будете писать обертками над функциями. Это как в случае с jQuery, если вы слышите от кого-то слова "Я знаю jQuery досконально", то скорее всего этот человек знает JavaScript на базовом уровне.
Из хороших фреймворков:
Symfony
Zend
Laravel (частично построен на пакетах Symfony)
Изучать фреймоврки именно в том порядке, в котором я их перечислил, начинать писать на них лучше с конца, потому что на Laravel самая быстрая скорость разработки.
Ещё советую писать сразу под PHP с strict_types=1; и с полным type hinting и return type declaration, вот так:
public static function getSum(float $a, float $b) : float { return $a + $b;}
А ещё сразу приучите себя к PSR.
Без сайта трудно что-то сказать. Боты просто так не начнут долбить по определенному URL, если только не: 1) домен ранее имел очень важные файлы по данному URL. 2) если на вас кто-то проставил много ссылок именно на ошибочный URL, что вряд-ли возможно. Остается один вариант: ошибка либо в XML-карте сайта, либо в самом шаблоне, и где-то генерируется ссылка на этот самый /video.
Для того, чтобы эта вакханалия прекратилась, вам нужно отдавать не 301 статус (и да, кстати, куда 301 ведет, это же статус редиректа), а 404 или же 410.
В зависимости от веб-сервера, можно настроить отдачу 404/410 без передачи управления PHP, тогда нагрузка на сервер от этой "дудос-атаки" будет минимальной.
Какой у вас веб-сервер: Apache, nginx?
А что за страницы хоть? Может там ваша почта указана и данные, и какой-то каталог парсит именно эти 10 страниц. Может базу под рассылки продают, или ещё что-то...
Вам нужно профайлинг сделать, смотрите какая функция у вас жрет больше всего времени. Есть такая штука xhprof, на высокопосещаемых проектах можно запускать рандомно, чтобы не создавать ещё дополнительной статистики. Потом смотрите цепочку вызовов, и время потраченное на работу функций. Оттуда и плясать можно. Ещё по top смотрите процессы, которые отжирают время, может какой-то из них свалился в D state и у вас начинает скапливаться очередь. А так, конечно, лучше в эти 64ГБ кешировать что-то, если оперативная память стоит без дела, значит ваш проект не очень-то оптимизирован.
snusmumrik_zzz, дешевле внедрение != качество.
Лучше архитектура, быстрее работа при правильной настройке, нету избыточности функционала (блог, статьи, пинг, emoji и прочая хрень).
По внедрению будет дороже, аж почти в два раза наверное.
Вот прямо в том порядке, в которым вы и перечислили. Если нужно качество, то Magento берите.
UPDATE table SET pic2 = pic1 WHERE pic2 IS NULL
До: http://prntscr.com/e3jcb1
После: http://prntscr.com/e3jcss
Мне понравился проект. С точки зрения юзабилити:
1. http://prntscr.com/e39h3v вот эти разделители немного мешают, а если быть точнее, то тот, который отделяет фото.
2. График работы не понятный, красным что отмечено, когда мастер не работает, или он просто занят на эти дни уже, а на следующей недели в эти-же дни может быть свободен? Удобней было-бы текстом: сегодня и завтра работает. А когда подводишь, то выпадал бы по дням недели график.
3. Карточки мастеров вообще перегружены информацией, а точнее она не очень понятно подана, как портянка с текстом. Добавьте какие-то маркеры, вроде картинок, например график работы - картинка часов, и т.д. по аналогии.