Почему некоторые PHP-разработчики предпочитают статические API?

Оригинал: Why do some PHP Developers <3 Static APIs?

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

Читать дальше →

FAQ: Как заставить IDE автокомплитить scope методы в ActiveRecord Yii2

В последнее время часто стали задавать вопрос — как же заставить IDE дополнять предустановленые в модели scope методы. Для начала посмотрим, как разработчики фреймворка предполагают работу со scopes.

Вкратце. В модели создается статический метод, который дергается классом ActiveQuery черезе магический метод __call. Но эти методы не подхватываются IDE (на примере PhpStorm 7).



Читать дальше →

Задайте вопрос специалисту



Добрый день многоуважаемое сообщество.

Сегодня на нашем сайте появился новый блог Q&A (Вопросы и ответы). В этом блоге Вы можете задавать свои самые каверзные (и не очень) вопросы, связанные с программирование на PHP. Наши специалисты окажут Вам совершенно бесплатную консультацию по Вашему вопросу.

Для того, чтобы задать вопрос, необходимо подписаться на блог Q&A и создать в нем топик-вопрос.

Надеемся, что нововведение окажется полезным для Вас.

С уважением, PHP Time.

Ответ на «микрооптимизацию в PHP»

Оригинал: A Response to “Micro-Optimizations in PHP”

На прошлой неделе я прочитал пост, рекомендованный мне в PHP Weekly. Он назывался Микрооптимизация в PHP. Я повелся, ведь всегда стремлюсь быть лучшим PHP разработчиком. Пост начинается с общих рекомендаций, которые, по сути, являются даже не микро-, а микро-микрооптимизацией. Продолжая читать, я приходил к выводу, что описанное в тексте и вовсе имеет мало общего с оптимизацией. В итоге я могу сказать, что пост был написан безответственно — заявления автора не имели обоснований.

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

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

Читать дальше →

Правильный взгляд на временные зоны в PHP

Оригинал: Timezones, the Right Way


Это небольшая статья о том, как работать с временными зонами при хранении значений даты / времени в базе данных. Базы данных или язык программирования, который вы решите использовать, решающего значения не имеет, так как описываемые в статье явления универсальны. Свои действия я буду показывать на примере использования связки MySQL и PHP. Проблема, связанная с временными зонами, достаточно банальна. Многие часто забывают об их существовании, а некоторые считают их чем-то чрезмерно сложным. Обычно при настройке базы данных или при пользовании услугами веб-хостинга ваши временные зоны настроены по умолчанию. Настройки по умолчанию подойдут, если вы работаете с одним сервером, но что произойдет, если вы решите переместить его?

Читать дальше →

Доступны видео с последней конференции PHP Frameworks Day

Доклады всех участников достойны внимания. Видео доступны на официальном канале мероприятия на youtube: www.youtube.com/user/fwdays/videos. Так же на facebook были выложены фотографии: www.facebook.com/fwdays/photos_stream

Комрады, какой фреймворк вы используете для средних проектов?

Интересно отношение сообщества к фреймворкам. Лично я предпочитаю Yii. Вторая версия очень вкусная, но сырая. А Вы что используете в повседневной работе?

Декаплинг и фреймворки

Оригинал: Living Apart Together: Decoupling Code and Framework

Вы, конечно, используете в своей работе новейшие технологии и фреймворки. Более того, вы самостоятельно написали 2,5 фреймворка, ваш код  PSR-2 совместим, полностью юнит-тестирован, имеет сопровождающие PHPMD  и PHPCS конфигурации, и даже может поставляться с надлежащей документацией (на самом деле, она существует!). При выпуске новой версии вашего любимого фреймворка вы захотите побыстрее использовать его в своем ​​проекте и получите пару отчетов об ошибке. Вы, может быть, даже воспользуетесь модульным тестированием, чтобы определить ошибку и сделаете патч, чтоб исправить ее. Если это может помочь вам стать тем разработчиком, которым вы хотите быть, — пересмотрите отношения вашего кода и фреймворка.

Читать дальше →