Fork me on GitHub

Добро пожаловать

Внимание: Большая часть дизайна этого сайта взята (форкнута более правильный термин) с оригинального сайта PHP : Правильный путь. Ссылки на всех авторов оригинального сайта указаны внизу.

Этот сайт выступает в качестве гида по фреймворку Laravel, созданный Taylor Otwell и другими авторами. Laravel : Правильный путь направлен на всех ресурсов и общих практик для тех, кто использует фреймворк Laravel.

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

Это живой документ и он продолжит обновляться более полезной информацией и примерами по мере их появления.

Перевод

Laravel: Правильный путь переведен на следующие языки. Пожалуйста помогите с переводом сайта на остальные языки.

Как помочь?

Помогите сделать этот сайт лучшим ресурсом для начинающих PHP программистов! Помочь используя GitHub

Расскажите всем!

Руководство Laravel: Правильный путь содержит веб-баннеры, которые вы можете использовать на своём сайте. Окажите поддержку, показав начинающим PHP-разработчикам где они могут найти полезную информацию!

Посмотреть баннеры

Back to Top

Начало

Использование стабильной версии (5.1)

Если вы только начинаете работу с Laravel, убедитесь в том, что вы используете текущую стабильную версию Laravel 5.1. За последние несколько лет Laravel добился больших успехов, добавив новые возможности. Не дайте скромной разнице между числами 4.0 и 4.2 ввести вас в заблуждение, эта разница представляет важные изменения. Если вам нужна функция или пример её использования, вы всегда можете найти документацию на laravel.com/docs.

Встроенный веб-сервер

Вы можете заметить файл server.php в исходных кодах Laravel. Этот файл предназначен для запуска проекта без необходимости установки веб-сервера (такого как Apache или Nginx), но эта опция, в основном, расчитана только для разработки. Он работает на основе внутреннего веб-сервера PHP, доступном начиная с версии 5.4. Для запуска сервера Вам необходимо выполнить следующую команду из терминала:

> php -S localhost:8000 server.php

или проще (примечание: следующее работает только для Laravel v4.x):

> php artisan serve

Так же Вы можете указать необязательные параметры:

> php artisan serve --port=8080 --host=local.dev

Homestead

Laravel не только использует Vagrant в качестве официальной среды разработки, но также имеет свой собственный базовый образ, который называется “Homestead”. Вы можете использовать Homestead для начала разработки на Laravel без хлопот по настройке системных зависимостей Laravel’a.

Инструкции по использованию Homestead можно найти в официальной документации.

Homestead для 32-bit компьютеров

Homestead не будет запускаться на Вашем 32-битном компьютере, поскольку ему необходима аппаратная виртуализация (VT-x). Она необходима Homestead, поскольку его базовый образ - ubuntu/trusty64, которая является 64-битной машиной. Для тех людей, которые не могут включить это в своём BIOS, или для компьютеров без поддержки VT-x, можно использовать 32-битную версию Homestead, доступную по ссылке.

Создай свой собственный Homestead

Когда Вы используете Homestead, на нём уже есть предустановленные программы. Если Вы хотите настроить какое-либо допольнительное ПО, Вам необходим доступ к скриптам сборки Homestead. Такой проект есть, и он называется “Settler”. Вы можете использовать исходные коды данного проекта для лучшего понимания, как работает Homestead, и вероятно для написания своих скриптов.

Back to Top

Стандарты написания кода

Сам по себе Laravel не навязывает стандартов, как Вы должны называть свои переменные или сохранять файлы. До тех пор, пока Composer в состоянии их загрузить, технически проект будет работать. Однако, разработикам рекомендуется изучить и следовать следующи PSR стандартам:

Back to Top

Основные моменты

Парадигмы программирования

Паттерны проектирования

Есть несколько паттернов проектирования, которые лежат в основе Laravel. Phill Sparks сделал замечательную презентацию о них.

Как работает Laravel

Christopher Pitt великолепно объяснил внутрнее устройство Laravel. Вы можете прочитать его по следующей ссылке https://rebuildinglaravel.com/

Eloquent ORM

Самая популярная часть Laravel это звёздное ORM, которое называется Eloquent. It’s the easiest way to use an ORM in your application. Вы можете больше прочитать о Eloquent в официальной документации.

Интерфейс коммандой строки

Laravel поставляется вместе с своим интерфейсом коммандой строки, именуемым Artisan. Она основывается на компоненте Symfony Console. Laracasts имеет подробные уроки по тому, как работают команды и как сделать свои собственные.

Отладка

Крутая ошибка страниц Laravel - это нечто, благодаря чему Laravel известен. Спасибо библиотеке Whoops, которая генерирует страницы ошибок, на которые Вы смотрите во время ошибок.

Back to Top

Менеджер зависимостей

Laravel не написан с нуля. Он основан на нескольких библиотеках и фреймворках. Вы можете посмотреть на весь список зависимостей здесь. It is also being powered by Illuminate components. All of these components are being tied into each other by making sure each of them can be treated and written as a composer Composer library. These libraries is hosted in public repositories.

Composer и Packagist

По умолчанию, Laravel использует Packagist в качестве репозитория и GitHub для скачивания своих файлов. Но Вы можете задать свои репозитории с помощью настройки Satis зеркала пакетов. Также Вы можете использовать любой класс или даже функцию в Laravel (до тех пор пока она может быть автозагружена). Но это не рекоммендуемая практика. Лучше оформить свои наработки в виде Composer библиотеки и включить её как зависимость в файл composer.json.

Laravel Package Archivists

На следующих сайтах Вы можете найти пакеты для Laravel:

Back to Top

Практики написания кода

Основы

Laravel имеет тысячи особенностей, которые могут Вас сначала отпугнуть.

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

Дата и время

Не смотря на то, что PHP имеет встроенный класс DateTime для помощи Вам в чтении, записи, сравнениях и вычислениях даты или времени, рекомендуется использовать библиотеку Carbon для работы с датами.

Шаблоны проектирования

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

Работа с UTF-8

Laravel использует библиотеку patchwork/utf8 для всё работы, связанной с UTF8. Для разработчика необходимо понять следующии концепции:

Back to Top

Ресурсы

Из источника

Их следует читать в твиттере

Обучение

PHP PaaS Провайдеры

Компоненты

Illuminate components which can be found in https://github.com/illuminate

are the smaller parts that makes up Laravel Framework. Several other open-source libraries can be also seen to be used by Laravel by mere looking at its composer.json file https://github.com/laravel/framework/blob/5.0/composer.json#L22-L43

Иные полезные ресурсы

Laracasts

Каналы на Youtube

Платные видео

Книги

Back to Top

Сообщество

Пользовательские группы

Конференции

Back to Top