Укажите регион, чтобы мы точнее рассчитали условия доставки
Начните вводить название города, страны, индекс, а мы подскажем
Например:
Москва,
Санкт-Петербург,
Новосибирск,
Екатеринбург,
Нижний Новгород,
Краснодар,
Челябинск,
Кемерово,
Тюмень,
Красноярск,
Казань,
Пермь,
Ростов-на-Дону,
Самара,
Омск
- Книги
- Программирование
- Мэтт Стаффер
📚 Laravel. Полное руководство
Эта и ещё 2 книги за 399 ₽
По абонементу вы каждый месяц можете взять из каталога одну книгу до 700 ₽ и две книги из специальной подборки. Узнать больше
Оплачивая абонемент, я принимаю условия оплаты и её автоматического продления, указанные в оферте
Описание книги
Что отличает Laravel от других PHP-фреймворков? Скорость и простота. Стремительная разработка приложений, обширная экосистема и набор инструментов Laravel позволяют быстро создавать сайты и приложения, отличающиеся чистым удобочитаемым кодом.
Мэтт Стаффер, известный преподаватель и ведущий разработчик, предлагает как общий обзор фреймворка, так и конкретные примеры работы с ним. Опытным PHP-разработчикам книга поможет быстро войти в новую тему, чтобы реализовать проект на Laravel. В издании также раскрыты темы Laravel Dusk и Horizon, собрана информация о ресурсах сообщества и других пакетах, не входящих в ядро Laravel.
После покупки предоставляется дополнительная возможность скачать книгу в формате epub.
Подробная информация
- Возрастное ограничение:
- 16+
- Дата выхода на ЛитРес:
- 06 июля 2020
- Дата перевода:
- 2020
- Дата написания:
- 2019
- Объем:
- 512 стр.
- ISBN:
- 978-5-4461-1396-5
- Общий размер:
- 8 MB
- Общее кол-во страниц:
- 512
- Размер страницы:
- 165 x 233 мм
- Переводчик:
- Владимир Сауль
- Правообладатель:
- Питер
Книга Мэтт Стаффер «Laravel. Полное руководство» — скачать в pdf или читать онлайн. Оставляйте комментарии и отзывы, голосуйте за понравившиеся.
Книга входит в серию
«Бестселлеры O’Reilly (Питер)»
Оставьте отзыв
На что хотите пожаловаться?
Сообщение отправлено
Мы получили Ваше сообщение.
Наши модераторы проверят книгу
в ближайшее время.
Спасибо, что помогаете нам.
Сообщение уже отправлено
Мы уже получили Ваше сообщение.
Наши модераторы проверят книгу
в ближайшее время.
Спасибо, что помогаете нам.
Поделиться отзывом на книгу
Мэтт Стаффер
Laravel. Полное руководствоPDF
Привет, Хаброжители! Что отличает Laravel от других PHP-фреймворков? Скорость и простота. Стремительная разработка приложений, обширная экосистема и набор инструментов Laravel позволяют быстро создавать сайты и приложения, отличающиеся чистым удобочитаемым кодом.
Мэтт Стаффер, известный преподаватель и ведущий разработчик, предлагает как общий обзор фреймворка, так и конкретные примеры работы с ним. Опытным PHP-разработчикам книга поможет быстро войти в новую тему, чтобы реализовать проект на Laravel. В издании также раскрыты темы Laravel Dusk и Horizon, собрана информация о ресурсах сообщества и других пакетах, не входящих в ядро Laravel. В этой книге вы найдете: • Инструменты для сбора, проверки, нормализации, фильтрации данных пользователя • Blade, мощный пользовательский шаблонизатор Laravel • Выразительная модель Eloquent ORM для работы с базами данных приложений • Информация о роли объекта Illuminate Request в жизненном цикле приложения • PHPUnit, Mockery и Dusk для тестирования вашего PHP-кода • Инструменты для написания JSON и RESTful API • Интерфейсы для доступа к файловой системе, сессиям, куки, кэшам и поиску • Реализации очередей, заданий, событий и публикации событий WebSocket
Движок шаблонов Blade
PHP в качестве языка шаблонов функционирует относительно хорошо. Но у него есть свои недостатки, поэтому нельзя использовать <?php inline повсеместно. В большинстве современных фреймворков есть свой язык шаблонов.
Laravel предлагает собственный движок шаблонов Blade, созданный на основе движка .NET Razor. Он обладает лаконичным синтаксисом, довольно понятен, сопровождается мощной и интуитивно понятной моделью наследования и легкой расширяемостью.
Быстро ознакомиться с тем, как выглядит Blade, можно на примере 4.1.
Пример 4.1. Примеры Blade
<h1>{{ $group->title }}</h1>
{!! $group->heroImageHtml() !!}
@forelse ($users as $user)
• {{ $user->first_name }} {{ $user->last_name }}<br>
@empty
No users in this group.
@endforelse
Как видно, в коде Blade используются фигурные скобки для Echo и соглашение, в котором его пользовательские теги, называемые «директивами», имеют префикс @. Вы будете применять директивы для всех своих структур управления, а также для наследования и любых пользовательских функций, которые хотите добавить.
Синтаксис Blade чистый и лаконичный, поэтому работать с ним проще и приятнее, чем с альтернативами. Но в тот момент, когда понадобится что-нибудь сложное в ваших шаблонах — вложенное наследование, сложные условия или рекурсия, — движок проявляет себя с лучшей стороны. Как и лучшие компоненты Laravel, тяжелые требования к приложениям он упрощает и делает доступными.
Кроме того, поскольку весь синтаксис Blade скомпилирован в обычный код PHP, а затем кэширован, он быстр и позволяет по желанию использовать нативный PHP в ваших файлах этого движка. Тем не менее я бы рекомендовал избегать применения PHP, когда это вообще возможно, — обычно, если нужно сделать то, что невозможно с Blade или его пользовательской директивой, это не относится к шаблону.
Отображение данных
Как вы можете видеть в примере 4.1, скобки {{ и }} используются для обертки PHP-кода, который вы хотели бы отобразить. Код {{ $variable }} действует подобно <?= $variable ?> в простом PHP.
Однако есть отличие: Blade по умолчанию экранирует все отображения PHP-функцией htmlentities() для защиты ваших пользователей от вставки вредоносных сценариев. Это означает, что {{ $variable }} функционально эквивалентно <?= htmlentities($variable) ?>. Если вы не хотите экранировать вывод, используйте {!!! и !!} вместо этого.
СКОБКИ {{ И }} ПРИ ИСПОЛЬЗОВАНИИ ФРОНТЕНД-ФРЕЙМВОРКА ШАБЛОНИЗАЦИИ
Вы могли заметить, что синтаксис отображения для Blade ({{}}) аналогичен таковым для многих фронтенд-фреймворков. Как же Laravel узнает, используете вы Blade или Handlebars?
Blade игнорирует все {{ с предваряющим знаком @. Таким образом, он проанализирует первый из следующих примеров, но второй будет выведен полностью:
// Распознается как Blade; значение $bladeVariable
// отображается в представлении
{{ $bladeVariable }}// @ удаляется и «{{ handlebarsVariable }}» полностью
// отображается в представлении
@{{ handlebarsVariable }}Вы также можете обернуть любые большие части содержимого сценария директивой verbatim (http://bit.ly/2OnrPRP).
Управляющие структуры
Большинство управляющих структур в Blade будут знакомы. Многие напрямую дублируют имя и структуру такого же тега в PHP.
Есть несколько хелперов для удобства, но в целом структуры управления выглядят чище, чем в PHP.
Условные конструкции
Рассмотрим логические структуры управления.
@if
Выражение @if ($condition) в Blade компилируется в <?php if ($condition): ?>. else, elseif и endif — с точно таким же стилем синтаксиса в PHP. Взгляните на пример 4.2
Пример 4.2. @if, else, elseif и endif
@if (count($talks) === 1)
There is one talk at this time period.
@elseif (count($talks) === 0)
There are no talks at this time period.
@else
There are {{ count($talks) }} talks at this time period.
@endif
Как и в случае с собственными условными выражениями PHP, вы можете смешивать и комбинировать их так, как вам удобно. У них нет особой логики; есть анализатор с поиском в форме @if($condition) и заменой соответствующим кодом PHP.
@unless и @endunless
@unless, с другой стороны, — это новый синтаксис, который не имеет прямого эквивалента в PHP. Это противоположность @if. @unless($condition) совпадает с <?php if (! $condition). Вы можете увидеть это на примере 4.3.
Пример 4.3. @unless и @endunless
@unless ($user->hasPaid())
You can complete your payment by switching to the payment tab.
@endunless
Циклы
Далее рассмотрим циклы.
@for, @foreach и @while
for, foreach и while работают в Blade так же, как и в PHP (примеры 4.4–4.6).
Пример 4.4. for и @endfor
@for ($i = 0; $i < $talk->slotsCount(); $i++)
The number is {{ $i }}<br>
@endfor
Пример 4.5. foreach и @endforeach
@foreach ($talks as $talk)
• {{ $talk->title }} ({{ $talk->length }} minutes)<br>
@endforeach
Пример 4.6. while и @endwhile
@while ($item = array_pop($items))
{{ $item->orSomething() }}<br>
@endwhile
@forelse и @endforelse
forelse — это foreach, который может быть выполнен, даже если перебираемый вами объект пуст. Мы видели это в действии в начале главы. Пример 4.7 показывает другой вариант.
Пример 4.7. forelse
@forelse ($talks as $talk)
• {{ $talk->title }} ({{ $talk->length }} minutes)<br>
@empty
No talks this day.
@endforelse
ПЕРЕМЕННАЯ $LOOP В ДИРЕКТИВАХ FOREACH И @FORELSE
Директивы foreach и forelse (представленные в Laravel 5.3) добавляют переменную $loop, недоступную в циклах foreach PHP. При использовании внутри цикла foreach или forelse она будет возвращать объект stdClass со следующими свойствами.
• index — отсчитанный от 0 индекс текущего элемента в цикле; 0 — «первый элемент».
• iteration — отсчитанный от 1 индекс текущего элемента в цикле; 1 — «первый элемент».
• remaining — количество элементов, оставшихся в цикле.
• count — количество элементов в цикле.
• first — логическое значение, указывающее, является ли данный элемент первым элементом в цикле.
• last — логическое значение, указывающее, является ли данный элемент последним элементом в цикле.
• depth — сколько «уровней» в этом цикле: 1 для цикла, 2 для цикла внутри цикла и т. д.
• parent — ссылка на переменную $loop для элемента родительского цикла, если этот цикл находится в другом цикле foreach; иначе null.
Вот пример того, как это работает:
<ul> @foreach ($pages as $page) <li>{{ $loop->iteration }}: {{ $page->title }} @if ($page->hasChildren()) <ul> @foreach ($page->children() as $child) <li>{{ $loop->parent->iteration }} .{{ $loop->iteration }}: {{ $child->title }}</li> @endforeach </ul> @endif </li> @endforeach </ul>
Наследование шаблонов
Blade предоставляет структуру для наследования шаблонов, которая позволяет представлениям расширять, изменять и включать в себя другие представления.
Посмотрим, как наследование структурируется с Blade.
Определение разделов страницы с помощью директив @section/@show и yield
Начнем с макета Blade верхнего уровня, как в примере 4.8. Это определение универсальной обертки страницы, в которую мы позже поместим специфичный для страницы контент.
Пример 4.8. Структура Blade
<!-- resources/views/layouts/master.blade.php -->
<html>
<head>
<title>My Site | @yield('title', 'Home Page')</title>
</head>
<body>
<div class="container">
@yield('content')
</div>
@section('footerScripts')
<script src="app.js"></script>
@show
</body>
</html>
Это напоминает обычную HTML-страницу, но вы можете видеть yield в двух местах (title и content), и мы определили section в третьем (footerScripts). Здесь у нас есть три директивы Blade: только yield(‘content’), yield(‘title’, ‘Home Page’) с заданным по умолчанию значением и @section/@show с реальным содержимым в нем.
Хотя они выглядят немного по-разному, но функционируют, по существу, одинаково. Все три определяют, что есть раздел с заданным именем (первый параметр), который может быть расширен позже, и что делать, если раздел не был расширен. Они делают это либо строкой возврата (‘Home Page’), либо без возврата (просто не будет отображаться ничего, если директива не расширена), либо с возвратом всего блока (в данном случае ).
В чем разница? У yield(‘content’) нет контента по умолчанию. Кроме того, в yield(‘title’) оно будет отображаться, только если директива не расширяется. В обратном случае ее дочерние разделы не будут иметь программного доступа к значению по умолчанию. @section/@show одновременно определяет значение по умолчанию и делает так, чтобы его содержимое было доступно его дочерним элементам через @parent.
Если у вас есть такой родительский макет, вы можете расширить его в новом файле шаблона, как в примере 4.9.
Пример 4.9. Расширение макета Blade
<!-- resources/views/dashboard.blade.php -->
@extends('layouts.master')
@section('title', 'Dashboard')
@section('content')
Welcome to your application dashboard!
@endsection
@section('footerScripts')
@parent
<script src="dashboard.js"></script>
@endsection
Это дочернее представление позволяет нам показать несколько новых концепций наследования Blade.
@extends
В примере 4.9 с помощью @extends(‘layouts.master’) мы определяем, что это представление не должно отображаться само по себе, а вместо этого расширяет другое представление. Это означает, что его роль заключается в установке содержания различных разделов, но не в работе в одиночку. Больше похоже на серию блоков контента, чем на страницу HTML. Строка также определяет, что представление, которое она расширяет, находится по адресу resources/views/layouts/master.blade.php.
Каждый файл должен расширять только один другой файл, и вызов @extends обязан быть первой строкой файла.
@section и @endsection
С помощью @section(‘title’, ‘Dashboard’) мы предоставляем наш контент для первого раздела, title. Поскольку содержимое очень короткое, вместо @section и @endsection мы используем сокращенную форму. Это позволяет передавать содержимое как второй параметр @section, а затем двигаться дальше. Если вас немного сбивает с толку @section без @endsection, можно использовать обычный синтаксис.
С @section(‘content’) и далее мы используем обычный синтаксис для определения содержимого раздела content. Пока мы вставим небольшое приветствие. Однако заметьте: когда вы применяете @section в дочернем представлении, вы заканчиваете его @endsection (или его псевдонимом stop) вместо show, который зарезервирован для определения разделов в родительских представлениях.
@parent
С @section(‘footerScripts’) и далее мы используем обычный синтаксис для определения содержимого раздела footerScripts.
Помните, что мы фактически определили этот контент (или по крайней мере его «значение по умолчанию») уже в главном макете. Так что на этот раз у нас есть два варианта: либо перезаписать содержимое из родительского представления, либо добавить к нему.
Вы можете видеть, что у нас есть возможность включить содержимое из родительского представления с помощью директивы @parent внутри этого раздела. В противном случае содержимое раздела будет полностью переписано всем тем, что определено в родителе этого раздела.
Включение составляющих представления
Теперь, когда мы разобрались с основами наследования, можно использовать еще несколько уловок.
@include
Что, если мы находимся в одном представлении и хотим использовать другое? Возможно, есть кнопка регистрации, которую желательно повторно добавить по всему сайту. И, может быть, хочется подбирать текст кнопки каждый раз, когда ее используем. Посмотрите на пример 4.10.
Пример 4.10. Включение составляющих представления с include
<!-- resources/views/home.blade.php -->
<div class="content" data-page-name="{{ $pageName }}">
<p>Here's why you should sign up for our app: <strong>It's Great.</strong></p>
@include('sign-up-button', ['text' => 'See just how great it is'])
</div>
<!-- resources/views/sign-up-button.blade.php -->
<a class="button button--callout" data-page-name="{{ $pageName }}">
<i class="exclamation-icon"></i> {{ $text }}
</a>
include подтягивает составляющую и передает в нее данные (не обязательно). Обратите внимание, что вы можете не только явно передавать данные для включения через второй параметр include, но и ссылаться на любые переменные во включенном файле, которые доступны для включаемого представления (в этом примере $pageName). Вы можете делать все, что хотите, но я бы рекомендовал для ясности всегда передавать каждую переменную, которую собираетесь применять.
Вы также можете использовать директивы includeIf, includeWhen и includeFirst, как показано в примере 4.11.
Пример 4.11. Включение представлений по условиям
{{-- Включить представление, если оно существует --}}
@includeIf('sidebars.admin', ['some' => 'data'])
{{-- Включить представление, если переданная переменная равна true --}}
@includeWhen($user->isAdmin(), 'sidebars.admin', ['some' => 'data'])
{{-- Включить первое представление из данного массива представлений --}}
@includeFirst(['customs.header', 'header'], ['some' => 'data'])
@each
Вы можете представить себе обстоятельства, когда вам нужно перебрать массив, коллекцию и include часть для каждого элемента. Для этого есть директива each.
Скажем, у нас есть боковая модульная панель и мы хотим включить несколько модулей со своим названием. Посмотрите на пример 4.12.
Пример 4.12. Использование составляющих представления в цикле с each
<!-- resources/views/sidebar.blade.php -->
<div class="sidebar">
@each('partials.module', $modules, 'module', 'partials.empty-module')
</div>
<!-- resources/views/partials/module.blade.php -->
<div class="sidebar-module">
<h1>{{ $module->title }}</h1>
</div>
<!-- resources/views/partials/empty-module.blade.php -->
<div class="sidebar-module">
No modules :(
</div>
Рассмотрим синтаксис each. Первый параметр — это имя составляющей представления. Второй — массив или коллекция для итерации. Третье — название переменной, под которым каждый элемент (в данном случае каждый элемент в массиве $modules) будет передан представлению. И необязательный четвертый параметр — это представление, показывающее, являются ли массив или коллекция пустыми (или при желании можно передать здесь строку, которая будет использоваться в качестве вашего шаблона).
Использование стеков
Общий шаблон, возможно, сложен для управления с помощью базового Blade — когда каждому представлению в иерархии Blade необходимо добавить что-то в определенный раздел, — почти как при добавлении записи в массив.
Наиболее распространенная ситуация — когда определенные страницы (а иногда и в более широком смысле определенные разделы сайта) имеют конкретные уникальные файлы CSS и JavaScript, которые им нужно загрузить. Представьте, что у вас есть «глобальный» CSS-файл для всего сайта, CSS-файл раздела вакансий и CSS-файл страницы «Устроиться на работу».
Стеки Blade созданы именно для такого. В родительском шаблоне определите стек-заполнитель. Затем в каждом дочернем шаблоне вы можете туда «выталкивать» записи с помощью push/@endpush, который добавляет их в конец стека в конечном изображении. Вы также можете использовать @prepend/@endprepend, чтобы добавить их в начало. Пример 4.13 иллюстрирует это.
Пример 4.13. Использование стеков Blade
<!-- resources/views/layouts/app.blade.php -->
<html>
<head><!-- шапка --></head>
<body>
<!-- остальная чать страницы -->
<script src="/css/global.css"></script>
<!-- заполнитель, куда будет помещен контент из стека -->
@stack('scripts')
</body>
</html>
<!-- resources/views/jobs.blade.php -->
@extends('layouts.app')
@push('scripts')
<!-- выталкиваем что-нибудь в конец стека -->
<script src="/css/jobs.css"></script>
@endpush
<!-- resources/views/jobs/apply.blade.php -->
@extends('jobs')
@prepend('scripts')
<!-- выталкиваем что-нибудь в начало стека -->
<script src="/css/jobs--apply.css"></script>
@endprepend
Это приводит к следующему результату:
<html>
<head><!-- шапка --></head>
<body>
<!-- остальная часть страницы -->
<script src="/css/global.css"></script>
<!-- заполнитель, куда будет помещен контент из стека -->
<script src="/css/jobs--apply.css"></script>
<script src="/css/jobs.css"></script>
</body>
</html>
Использование компонентов и слотов
Laravel предлагает другой шаблон для включения контента между представлениями, который был представлен в 5.4: компоненты и слоты. Первые наиболее эффективны в контексте, когда вы используете составляющие представления и передаете в них большие порции контента в качестве переменных. Посмотрите на пример 4.14 для иллюстрации модели или всплывающей подсказки, которая может предупредить пользователя при ошибке или другом действии.
Пример 4.14. Модальное окно — неудачный пример составляющей представления
<!-- resources/views/partials/modal.blade.php -->
<div class="modal">
<div>{{ $content }}</div>
<div class="close button etc">...</div>
</div>
<!-- в другом шаблоне -->
@include('partials.modal', [
'body' => '<p>The password you have provided is not valid. Here are the rules
for valid passwords: [...]</p><p><a href="#">...</a></p>'
])
Это слишком много для такой переменной и идеально подходит для компонента.
Компоненты со слотами — это составляющие представлений, которые разработаны, чтобы включать большие порции («слоты») для получения содержимого из включаемого шаблона. В примере 4.15 показано, как перепроектировать код из примера 4.14 с использованием компонентов и слотов.
Пример 4.15. Модальное окно как более подходящий компонент со слотами
<!-- resources/views/partials/modal.blade.php -->
<div class="modal">
<div>{{ $slot }}</div>
<div class="close button etc">...</div>
</div>
<!-- в другом шаблоне -->
@component('partials.modal')
<p>The password you have provided is not valid.
Here are the rules for valid passwords: [...]</p>
<p><a href="#">...</a></p>
@endcomponent
Как вы можете видеть в примере 4.15, директива component позволяет извлекать наш HTML-код из сжатой строки переменной и возвращает в пространство шаблона. Переменная $slot в шаблоне нашего компонента получает любой контент, передаваемый в component.
Составные слоты
Метод, который мы использовали в примере 4.15, называется слотом «по умолчанию»; все, что вы передаете между component и @endcomponent, передается переменной $slot. Но вы также можете иметь больше, чем просто слот по умолчанию. Представим модальное окно с заголовком, как в примере 4.16.
Пример 4.16. Составляющая модального представления с двумя переменными
<!-- resources/views/partials/modal.blade.php -->
<div class="modal">
<div class="modal-header">{{ $title }}</div>
<div>{{ $slot }}</div>
<div class="close button etc">...</div>
</div>
Вы можете использовать директиву slot в своих вызовах component для передачи содержимого в слоты, отличные от заданного по умолчанию, как показано в примере 4.17.
Пример 4.17. Передача более одного слота компоненту
@component('partials.modal')
@slot('title')
Password validation failure
@endslot
<p>The password you have provided is not valid.
Here are the rules for valid passwords: [...]</p>
<p><a href="#">...</a></p>
@endcomponent
И если в вашем представлении есть другие переменные, которые бессмысленны в качестве слота, все равно можно передать массив содержимого в качестве второго параметра в component так же, как с include. Взгляните на пример 4.18.
Пример 4.18. Передача данных в компонент без слотов
@component('partials.modal', ['class' => 'danger'])
...
@endcomponent
Именование компонента как директивы
Есть хитрый трюк, чтобы еще упростить компоненты для вызова: псевдонимы. Просто вызовите Blade::component() на фасаде Blade — наиболее распространенным является метод AppServiceProvider boot() — и передайте ему сначала местоположение компонента, а затем имя желаемой директивы, как показано в примере 4.19.
Пример 4.19. Псевдонимизация компонента как директивы
// AppServiceProvider@boot
Blade::component('partials.modal', 'modal');
<!-- в шаблоне -->
@modal
Modal content here
@endmodalИмпорт
» Более подробно с книгой можно ознакомиться на сайте издательства
» Оглавление
» Отрывок
Для Хаброжителей скидка 25% по купону — Laravel
По факту оплаты бумажной версии книги на e-mail высылается электронная книга.
Мэтт Стаффер
Что отличает Laravel от других PHP-фреймворков? Скорость и простота. Стремительная разработка приложений, обширная экосистема и набор инструментов Laravel позволяют быстро создавать сайты и приложения, отличающиеся чистым удобочитаемым кодом.
Мэтт Стаффер, известный преподаватель и ведущий разработчик, предлагает как общий обзор фреймворка, так и конкретные примеры работы с ним. Опытным PHP-разработчикам книга поможет быстро войти в новую тему, чтобы реализовать проект на Laravel. В издании также раскрыты темы Laravel Dusk и Horizon, собрана информация о ресурсах сообщества и других пакетах, не входящих в ядро Laravel.
В этой книге вы найдете: инструменты для сбора, проверки, нормализации, фильтрации данных пользователя; Blade, мощный пользовательский шаблонизатор Laravel; выразительная модель Eloquent ORM для работы с базами данных приложений; информация о роли объекта Illuminate Request в жизненном цикле приложения; PHPUnit, Mockery и Dusk для тестирования вашего PHP-кода; инструменты для написания JSON и RESTful API; интерфейсы для доступа к файловой системе, сессиям, куки, кэшам и поиску; реализации очередей, заданий, событий и публикации событий WebSocket.
Типографский формат: 70х100/16
Переплёт: Мягкий
Год издания: 2021
Количество страниц: 512
Издательство: Питер
ISBN: 978-5-4461-1396-5
Возрастные ограничения: 16+
Размер книги, см: 16,5
x 2,1
x 23,3
Laravel. Полное руководство
Нет в наличии
Доставка осуществляется только по России
Доставка по Москве :
Самовывоз из магазина на Таганской (бесплатно)
Курьером (в пределах МКАД) 350 р.
Доставка в регионы :
Почтой России. Сроки доставки зависят от удалённости региона, обычно — в течение 1−3 недель
Через пункты выдачи заказов Boxberry. Срок доставки — от 4 до 14 дней (срок может быть увеличен из-за дальности региона, а также в предпраздничное время)
Что отличает Laravel от других РНР-фреймворков? Скорость и простота. Стремительная разработка приложений, обширная экосистема и набор инструментов Laravel позволяют быстро создавать сайты и приложения, отличающиеся чистым удобочитаемым кодом. Мэтт Стаффер, известный преподаватель и ведущий разработчик, предлагает как общий обзор фреймворка, так и конкретные примеры работы с ним. Опытным PHP-разработчикам книга поможет быстро войти в новую тему, чтобы реализовать проект на Laravel. В издании также раскрыты темы Laravel Dusk и Horizon, собрана информация о ресурсах сообщества и других пакетах, не входящих в ядро Laravel.
Фрагмент текстового слоя документа размещен для индексирующих роботов.
Для полноценной работы с документом, пожалуйста, перейдите в
ридер.
Matt Laravel: Up & Running A Framework for Building Modern PHP Apps SECOND EDITION Boston Farnham Sebastopol Tokyo Beijing Boston Farnham Sebastopol Tokyo Beijing
Мэтт Стаффер Laravel 2-е издание Полное руководство
Мэтт Стаффер Laravel. Полное руководство. 2-е издание Серия «Бестселлеры O’Reilly» Перевел с английского Владимир Сауль Заведующая редакцией Ю. Сергиенко Руководитель проекта С. Давид Ведущий редактор Н. Гринчик Художественный редактор Н. Васильева Литературные редакторы В. Байдук, А. Дубейко Корректоры О. Андриевич, Е. Павлович Верстка Г. Блинов ББК 32.988.02-018 УДК 004.738.5 Стаффер Мэтт С78 Laravel. Полное руководство. 2-е изд. — СПб.: Питер, 2020. — 512 с.: ил. — (Се- рия «Бестселлеры O’Reilly»). ISBN 978-5-4461-1396-5 Что отличает Laravel от других PHP-фреймворков? Скорость и простота. Стремительная разработка прило- жений, обширная экосистема и набор инструментов Laravel позволяют быстро создавать сайты и приложения, отличающиеся чистым удобочитаемым кодом. Мэтт Стаффер, известный преподаватель и ведущий разработчик, предлагает как общий обзор фреймворка, так и конкретные примеры работы с ним. Опытным PHP-разработчикам книга поможет быстро войти в новую тему, чтобы реализовать проект на Laravel. В издании также раскрыты темы Laravel Dusk и Horizon, собрана информация о ресурсах сообщества и других пакетах, не входящих в ядро Laravel. 16+ (В соответствии с Федеральным законом от 29 декабря 2010 г. № 436-ФЗ.) ISBN 978-1492041214 англ. Authorized Russian translation of the English edition of Laravel: Up and Running, 2nd Edition. ISBN 9781492041214 © 2019 Matt Stauffer This translation is published and sold by permission of O’Reilly Media, Inc., which owns or controls all rights to publish and sell the same. ISBN 978-5-4461-1396-5 © Перевод на русский язык ООО Издательство «Питер», 2020 © Издание на русском языке, оформление ООО Издательство «Питер», 2020 © Серия «Бестселлеры O’Reilly», 2020 Права на издание получены по соглашению с O’Reilly. Все права защищены. Никакая часть данной книги не может быть воспроизведена в какой бы то ни было форме без письменного разрешения владельцев авторских прав. Информация, содержащаяся в данной книге, получена из источников, рассматриваемых издательством как на- дежные. Тем не менее, имея в виду возможные человеческие или технические ошибки, издательство не может гарантировать абсолютную точность и полноту приводимых сведений и не несет ответственности за возможные ошибки, связанные с использованием книги. Издательство не несет ответственности за доступность материалов, ссылки на которые вы можете найти в этой книге. На момент подготовки книги к изданию все ссылки на интернет- ресурсы были действующими. Изготовлено в России. Изготовитель: ООО «Прогресс книга». Место нахождения и фактический адрес: 194044, Россия, г. Санкт-Петербург, Б. Сампсониевский пр., д. 29А, пом. 52. Тел.: +78127037373. Дата изготовления: 12.2019. Наименование: книжная продукция. Срок годности: не ограничен. Налоговая льгота — общероссийский классификатор продукции ОК 034-2014, 58.11.12 — Книги печатные профессиональные, технические и научные. Импортер в Беларусь: ООО «ПИТЕР М», 220020, РБ, г. Минск, ул. Тимирязева, д. 121/3, к. 214, тел./факс: 208 80 01. Подписано в печать 27.11.19. Формат 70×100/16. Бумага офсетная. Усл. п. л. 41,280. Тираж 1000. Заказ 0000. Отпечатано в ОАО «Первая Образцовая типография». Филиал «Чеховский Печатный Двор». 142300, Московская область, г. Чехов, ул. Полиграфистов, 1. Сайт: www.chpk.ru. E-mail: marketing@chpk.ru Факс: 8(496) 726-54-10, телефон: (495) 988-63-87
Краткое содержание Предисловие...........................................................................................................................................20 От.издательства.....................................................................................................................................25 Глава 1. Зачем.использовать.Laravel.............................................................................................26 Глава 2. Настройка.среды.разработки.для.использования.Laravel.....................................36 Глава 3. Маршрутизация.и.контроллеры.....................................................................................47 Глава 4. Движок.шаблонов.Blade....................................................................................................86 Глава 5. Базы.данных.и.Eloquent..................................................................................................108 Глава 6. Компоненты.для.клиентской.части.............................................................................177 Глава 7..Получение.и.обработка.пользовательских.данных...............................................198 Глава 8. Интерфейсы.Artisan.и.Tinker........................................................................................216 Глава 9. Аутентификация.и.авторизация.пользователей.....................................................234 Глава 10. Запросы,.ответы.и.middleware....................................................................................267 Глава 11. Контейнер..........................................................................................................................293 Глава 12. Тестирование....................................................................................................................308 Глава 13. Создание.API....................................................................................................................350 Глава 14. Сохранение.и.извлечение.данных.............................................................................390 Глава 15. Почта.и.уведомления.....................................................................................................418 Глава 16. Очереди,.задания,.события,.трансляция.и.планировщик.................................439 Глава 17. Хелперы.и.коллекции....................................................................................................477 Глава 18. Экосистема.инструментов.Laravel............................................................................494 Глоссарий...............................................................................................................................................501 Об.авторе................................................................................................................................................511 Об.обложке............................................................................................................................................512
Оглавление Предисловие...........................................................................................................................................20 О.чем.эта.книга................................................................................................................................20 Для.кого.предназначена.книга...................................................................................................21 Структура.издания.........................................................................................................................21 О.втором.издании...........................................................................................................................21 Условные.обозначения.................................................................................................................22 Благодарности.................................................................................................................................23 Первое.издание.........................................................................................................................23 Второе.издание.........................................................................................................................24 От.издательства.....................................................................................................................................25 Глава 1. Зачем.использовать.Laravel.............................................................................................26 Для.чего.нужен.фреймворк.........................................................................................................26 «Все.своими.руками».............................................................................................................27 Согласованность.и.гибкость................................................................................................27 Краткий.экскурс.в.историю.веб-.и.PHP-фреймворков....................................................27 Ruby.on.Rails..............................................................................................................................28 Бум.PHP-фреймворков.........................................................................................................28 Преимущества.и.недостатки.CodeIgniter........................................................................28 Laravel.1,.2.и.3............................................................................................................................29 Laravel.4.......................................................................................................................................29 Laravel.5.......................................................................................................................................29 Чем.уникален.Laravel....................................................................................................................30 Философия.Laravel.................................................................................................................30 Как.Laravel.делает.разработчиков.счастливее...............................................................31 Сообщество.Laravel.................................................................................................................32 Как.работает.Laravel......................................................................................................................32 Почему.стоит.выбрать.Laravel...................................................................................................35
Оглавление 7 Глава 2. Настройка.среды.разработки.для.использования.Laravel.....................................36 Системные.требования.................................................................................................................36 Composer............................................................................................................................................37 Локальные.среды.разработки.....................................................................................................37 Laravel.Valet...............................................................................................................................37 Laravel.Homestead....................................................................................................................38 Создание.нового.проекта.Laravel..............................................................................................38 Установка.Laravel.с.помощью.установщика.Laravel...................................................39 Установка.Laravel.с.помощью.функции.create-project.менеджера.пакетов. Composer.....................................................................................................................................39 Lambo:.улучшенный.вариант.команды.laravel.new......................................................39 Структура.каталогов.Laravel......................................................................................................40 Каталоги......................................................................................................................................40 Отдельные.файлы....................................................................................................................41 Конфигурация.................................................................................................................................42 Завершение.настройки.................................................................................................................45 Тестирование...................................................................................................................................45 Резюме................................................................................................................................................46 Глава 3. Маршрутизация.и.контроллеры.....................................................................................47 Краткое.введение.в.MVC,.команды.HTTP.и.REST...........................................................47 Что.такое.MVC.........................................................................................................................47 HTTP-команды.........................................................................................................................48 Что.такое.REST........................................................................................................................49 Определения.маршрутов.............................................................................................................50 Команды.маршрутов...............................................................................................................51 Обработка.маршрутов............................................................................................................52 Параметры.маршрутов...........................................................................................................53 Имена.маршрутов....................................................................................................................54 Группы.маршрутов.........................................................................................................................56 Middleware..................................................................................................................................57 Префиксы.путей.......................................................................................................................59 Запасные.маршруты................................................................................................................60 Поддоменная.маршрутизация.............................................................................................60 Префиксы.пространства.имен.............................................................................................61 Префиксы.имен........................................................................................................................61 Подписанные.маршруты..............................................................................................................62 Подписание.маршрута...........................................................................................................62 Изменение.маршрутов.для.разрешения.подписанных.ссылок...............................63
Оглавление Представления.(views).................................................................................................................64 Прямой.возврат.простых.маршрутов.с.помощью.метода.Route::view()...............65 Общий.доступ.представлений.к.переменным.с.использованием. компоновщиков.представлений..........................................................................................65 Контроллеры.(controllers)...........................................................................................................65 Получение.ввода.пользователя...........................................................................................68 Внедрение.зависимостей.в.контроллеры........................................................................69 Контроллеры.ресурсов...........................................................................................................71 Контроллеры.ресурсов.API..................................................................................................72 Контроллеры.одиночного.действия..................................................................................72 Привязка.модели.маршрута.......................................................................................................73 Неявная.привязка.модели.маршрута................................................................................73 Пользовательская.привязка.модели.маршрута.............................................................74 Кэширование.маршрутов............................................................................................................75 Подмена.метода.формы................................................................................................................75 HTTP-команды.в.Laravel......................................................................................................76 Подмена.HTTP-метода.в.HTML-формах.......................................................................76 Защита.CSRF...................................................................................................................................76 Перенаправления...........................................................................................................................78 redirect()->to()..........................................................................................................................79 redirect()->route()...................................................................................................................79 redirect()->back().....................................................................................................................80 Другие.методы.перенаправления.......................................................................................80 redirect()->with().....................................................................................................................81 Отмена.запроса................................................................................................................................82 Пользовательские.ответы............................................................................................................83 response()->make()..................................................................................................................83 response()->json().и.->jsonp().............................................................................................83 response()->download(),.->streamDownload().и.->file()............................................83 Тестирование...................................................................................................................................84 Резюме................................................................................................................................................85 Глава 4. Движок.шаблонов.Blade....................................................................................................86 Отображение.данных....................................................................................................................87 Управляющие.структуры............................................................................................................88 Условные.конструкции..........................................................................................................88 Циклы..........................................................................................................................................89 Наследование.шаблонов..............................................................................................................90 Определение.разделов.страницы.с.помощью.директив.@section/@show. и.@yield........................................................................................................................................90 Включение.составляющих.представления.....................................................................93
Оглавление 9 Использование.стеков............................................................................................................94 Использование.компонентов.и.слотов.............................................................................96 Компоновщики.представлений.и.внедрение.сервисов.....................................................98 Привязка.данных.к.представлениям.с.использованием.компоновщиков. представлений...........................................................................................................................98 Внедрение.сервиса.Blade.....................................................................................................101 Пользовательские.директивы.Blade......................................................................................102 Параметры.пользовательских.директив.Blade............................................................104 Пример:.применение.пользовательских.директив.Blade. для.многоклиентских.приложений.................................................................................104 Упрощенные.пользовательские.директивы.для.операторов.if..............................105 Тестирование.................................................................................................................................106 Резюме..............................................................................................................................................107 Глава 5. Базы.данных.и.Eloquent..................................................................................................108 Конфигурация...............................................................................................................................108 Подключения.базы.данных................................................................................................109 Другие.параметры.конфигурации.базы.данных.........................................................110 Миграции........................................................................................................................................110 Определение.миграций........................................................................................................111 Запуск.миграций....................................................................................................................117 Наполнение.базы.данными.......................................................................................................118 Создание.сидера.....................................................................................................................119 Фабрики.моделей..................................................................................................................120 Генератор.запросов......................................................................................................................124 Стандартное.использование.фасада.DB........................................................................125 Чистый.SQL.............................................................................................................................126 Выстраивание.цепочки.с.генератором.запросов.........................................................127 Транзакции...............................................................................................................................135 Введение.в.Eloquent.....................................................................................................................136 Создание.и.определение.моделей.Eloquent..................................................................138 Получение.данных.с.помощью.Eloquent.......................................................................139 Вставки.и.обновления.с.помощью.Eloquent.................................................................141 Удаление.с.помощью.Eloquent..........................................................................................145 Области.видимости...............................................................................................................147 Настройка.взаимодействия.полей.с.аксессорами,.мутаторами. и.приведением.атрибутов....................................................................................................150 Коллекции.Eloquent..............................................................................................................154 Сериализация.Eloquent.......................................................................................................156 Связи.в.Eloquent....................................................................................................................158 Обновление.меток.времени.родительской.записи.дочерними.записями..........170
Оглавление События.Eloquent.........................................................................................................................172 Тестирование.................................................................................................................................174 Резюме..............................................................................................................................................176 Глава 6. Компоненты.для.клиентской.части.............................................................................177 Laravel.Mix......................................................................................................................................177 Структура.каталога.Mix......................................................................................................179 Запуск.Mix...............................................................................................................................179 Что.предоставляет.Mix........................................................................................................180 Предустановки.клиентской.части.и.генерация.кода.аутентификации.....................186 Предустановки.клиентской.части....................................................................................187 Генерация.кода.аутентификации.....................................................................................188 Разбивка.на.страницы.................................................................................................................188 Разбивка.на.страницы.результатов.из.базы.данных..................................................188 Создание.разбивщиков.страниц.вручную.....................................................................189 Пакеты.сообщений.......................................................................................................................190 Строковые.хелперы,.множественность.и.локализация..................................................192 Строковые.хелперы.и.множественность.......................................................................192 Локализация............................................................................................................................193 Тестирование.................................................................................................................................196 Тестирование.пакетов.сообщений.и.ошибок...............................................................196 Перевод.и.локализация........................................................................................................197 Резюме..............................................................................................................................................197 Глава 7..Получение.и.обработка.пользовательских.данных...............................................198 Внедрение.объекта.запроса.......................................................................................................198 $request->all().........................................................................................................................199 $request->except().и.$request->only()............................................................................199 $request->has().......................................................................................................................200 $request->input()...................................................................................................................200 $request->method().и.->isMethod()................................................................................201 Ввод.массива............................................................................................................................201 Ввод.JSON.(и.$request->json()).......................................................................................201 Маршрутные.данные...................................................................................................................203 Из.Request................................................................................................................................203 Из.параметров.маршрута....................................................................................................203 Загруженные.файлы....................................................................................................................203 Валидация.......................................................................................................................................206 Метод.validate().объекта.Request.....................................................................................206 Ручная.валидация..................................................................................................................208
Оглавление 11 Объекты.пользовательских.правил.................................................................................208 Отображение.валидационных.сообщений....................................................................209 Запросы.формы.............................................................................................................................209 Создание.запроса.формы....................................................................................................210 Использование.запроса.формы.........................................................................................211 Модель.массового.назначения.Eloquent..............................................................................212 Синтаксис.{{.и.{!!...........................................................................................................................213 Тестирование.................................................................................................................................213 Резюме..............................................................................................................................................215 Глава 8. Интерфейсы.Artisan.и.Tinker........................................................................................216 Введение.в.интерфейс.Artisan..................................................................................................216 Основные.команды.Artisan.......................................................................................................217 Параметры................................................................................................................................217 Сгруппированные.команды...............................................................................................218 Написание.пользовательских.команд.Artisan....................................................................220 Пример.команды....................................................................................................................222 Аргументы.и.параметры......................................................................................................223 Использование.ввода............................................................................................................225 Приглашения...........................................................................................................................226 Вывод.........................................................................................................................................227 Команды.на.основе.замыканий.........................................................................................229 Вызов.команд.Artisan.в.нормальном.коде...........................................................................229 Tinker................................................................................................................................................230 Сервер.дампа.Laravel...................................................................................................................231 Тестирование.................................................................................................................................232 Резюме..............................................................................................................................................233 Глава 9. Аутентификация.и.авторизация.пользователей.....................................................234 Модель.User.и.миграция............................................................................................................235 Использование.глобального.хелпера.auth().и.фасада.Auth..........................................238 Контроллеры.аутентификации................................................................................................239 Контроллер.RegisterController..........................................................................................239 Контроллер.LoginController...............................................................................................240 Контроллер.ResetPasswordController.............................................................................242 Контроллер.ForgotPasswordController..........................................................................242 Контроллер.VerificationController...................................................................................243 Метод.Auth::routes()....................................................................................................................243 Каркас.аутентификации.............................................................................................................244 Токен.«Запомнить.меня»...........................................................................................................245
Оглавление Выполнение.вручную.аутентификации.пользователей.................................................246 Выполнение.вручную.выхода.пользователя.из.системы...............................................247 auth....................................................................................................................................................248 Верификация.адресов.электронной.почты.........................................................................249 Blade-директивы.для.аутентификации.................................................................................249 Гарды.................................................................................................................................................250 Указание.другого.гарда.по.умолчанию..........................................................................250 Использование.других.гардов.без.изменения.базового...........................................251 Добавление.нового.гарда.....................................................................................................251 Гарды.на.основе.замыкания.запроса...............................................................................252 Создание.собственного.провайдера.пользователей...................................................252 Собственные.провайдеры.пользователей.для.нереляционных. баз.данных................................................................................................................................253 События.аутентификации.........................................................................................................253 Система.авторизации.(список.управления.доступом).и.роли.....................................254 Определение.правил.авторизации...................................................................................255 Фасад.Gate.(и.его.внедрение)............................................................................................256 Ресурсы.гейтов........................................................................................................................256 Authorize....................................................................................................................................257 Авторизация.внутри.контроллера...................................................................................257 Проверка.с.помощью.экземпляра.класса.User............................................................259 Проверки.с.помощью.Blade-директив............................................................................260 Перехват.проверок.................................................................................................................260 Политики..................................................................................................................................261 Тестирование.................................................................................................................................263 Резюме..............................................................................................................................................266 Глава 10. Запросы,.ответы.и.middleware....................................................................................267 Жизненный.цикл.запроса.в.Laravel.......................................................................................267 Начальная.загрузка.приложения.....................................................................................267 Сервис-провайдеры...............................................................................................................269 Объект.Request..............................................................................................................................271 Получение.объекта.Request.в.Laravel.............................................................................271 Получение.основной.информации.о.запросе...............................................................272 Объект.Response...........................................................................................................................276 Использование.и.создание.объектов.Response.в.контроллерах............................276 Специализированные.типы.ответов................................................................................277 Laravel.и.middleware....................................................................................................................283 Вводная.информация.о.middleware.................................................................................283 Создание.собственного.middleware.................................................................................284
Оглавление 13 Привязка.middleware............................................................................................................286 Передача.параметров.middleware.....................................................................................289 Доверенные.прокси-серверы....................................................................................................290 Тестирование.................................................................................................................................291 Резюме..............................................................................................................................................292 Глава 11. Контейнер..........................................................................................................................293 Вводная.информация.о.внедрении.зависимостей............................................................293 Внедрение.зависимостей.и.Laravel.........................................................................................295 Глобальный.хелпер.app()...........................................................................................................295 Как.осуществляется.привязка.к.контейнеру......................................................................296 Привязка.классов.к.контейнеру..............................................................................................297 Привязка.к.замыканию........................................................................................................298 Привязка.одиночек,.псевдонимов.и.экземпляров......................................................299 Привязка.конкретного.экземпляра.к.интерфейсу.....................................................300 Контекстная.привязка..........................................................................................................300 Внедрение.в.конструктор.в.файлах.Laravel........................................................................301 Внедрение.через.метод...............................................................................................................302 Фасады.и.контейнер....................................................................................................................303 Как.работают.фасады............................................................................................................304 Фасады.реального.времени................................................................................................305 Сервис-провайдеры.....................................................................................................................306 Тестирование.................................................................................................................................306 Резюме..............................................................................................................................................307 Глава 12. Тестирование....................................................................................................................308 Основы.тестирования.................................................................................................................309 Именование.тестов.......................................................................................................................313 Среда.тестирования.....................................................................................................................314 Трейты.тестирования..................................................................................................................314 RefreshDatabase.......................................................................................................................315 WithoutMiddleware...............................................................................................................315 DatabaseMigrations................................................................................................................315 DatabaseTransactions.............................................................................................................315 Простые.модульные.тесты........................................................................................................316 Как.осуществляется.тестирование.приложений...............................................................317 HTTP-тесты...................................................................................................................................318 Тестирование.простых.страниц.с.помощью.вызова.$this->get(). и.других.HTTP-вызовов......................................................................................................318 Тестирование.API.на.базе.JSON.с.помощью.вызова.$this->getJson(). и.других.HTTP-вызовов.на.базе.JSON..........................................................................319
Оглавление Утверждения.в.отношении.объекта.$response............................................................320 Аутентификация.ответов....................................................................................................322 Ряд.других.настроек.HTTP-тестов..................................................................................323 Обработка.исключений.в.тестах.приложений.............................................................323 Тесты.базы.данных.......................................................................................................................324 Использование.фабрик.моделей.в.тестах......................................................................325 Заполнение.начальными.данными.в.тестах.................................................................325 Тестирование.других.систем.Laravel.....................................................................................325 Подделка.событий.................................................................................................................326 Подделка.фасадов.Bus.и.Queue.........................................................................................327 Подделка.фасада.Mail...........................................................................................................328 Подделка.фасада.Notification.............................................................................................329 Подделка.фасада.Storage.....................................................................................................330 Имитирование...............................................................................................................................331 Вводная.информация.об.имитировании.......................................................................331 Вводная.информация.о.Mockery......................................................................................331 Подделка.других.фасадов...................................................................................................334 Тестирование.команд.Artisan...................................................................................................335 Браузерные.тесты.........................................................................................................................336 Выбор.инструмента...............................................................................................................337 Тестирование.с.использованием.Dusk...........................................................................338 Резюме..............................................................................................................................................349 Глава 13. Создание.API....................................................................................................................350 Базовые.сведения.о.REST-подобных.API.на.базе.JSON................................................350 Организация.контроллеров.и.возвращаемые.JSON-сообщения.................................352 Чтение.и.отправка.заголовков.................................................................................................355 Отправка.заголовков.ответа.в.Laravel............................................................................356 Чтение.заголовков.запроса.в.Laravel..............................................................................356 Разбивка.на.страницы.в.Eloquent...........................................................................................356 Сортировка.и.фильтрация........................................................................................................358 Сортировка.результатов.API.............................................................................................359 Фильтрация.результатов.API............................................................................................360 Преобразование.результатов....................................................................................................361 Создание.собственного.преобразователя......................................................................362 Вложение.связей.пользовательских.преобразователей...........................................363 Ресурсы.API...................................................................................................................................365 Создание.класса.ресурса.....................................................................................................365 Коллекции.ресурсов.............................................................................................................366 Вложение.связей....................................................................................................................368
Оглавление 15 Применение.разбивки.на.страницы.к.ресурсам.API.................................................369 Условное.применение.атрибутов.....................................................................................370 Другие.настройки.для.ресурсов.API...............................................................................370 Аутентификация.API.с.помощью.Laravel.Passport..........................................................370 Вводная.информация.о.OAuth.2.0...................................................................................370 Установка.пакета.Passport..................................................................................................371 API.пакета.Passport...............................................................................................................373 Типы.допуска,.предлагаемые.пакетом.Passport..........................................................373 Управление.клиентами.и.токенами.с.помощью.API.пакета.Passport. и.компонентов.Vue................................................................................................................382 Области.видимости.пакета.Passport...............................................................................384 Развертывание.пакета.Passport.........................................................................................386 Аутентификация.с.помощью.токенов.API..........................................................................386 Настройка.ответов.с.кодом.404...............................................................................................387 Тестирование.................................................................................................................................388 Резюме..............................................................................................................................................389 Глава 14. Сохранение.и.извлечение.данных.............................................................................390 Локальные.и.облачные.файловые.менеджеры...................................................................390 Настройка.доступа.к.файлам.............................................................................................390 Использование.фасада.Storage..........................................................................................392 Добавление.дополнительных.провайдеров.из.пакета.Flysystem..........................393 Базовые.способы.загрузки.файлов.на.сервер.и.манипулирования.файлами.........393 Простые.способы.скачивания.файлов..................................................................................395 Сессии...............................................................................................................................................395 Получение.доступа.к.сессии..............................................................................................395 Методы,.доступные.в.экземплярах.сессий....................................................................396 Флеш-память.сессии............................................................................................................398 Кэш....................................................................................................................................................398 Получение.доступа.к.кэшу.................................................................................................399 Методы,.доступные.в.экземплярах.кэшей....................................................................400 Cookie-файлы.................................................................................................................................401 Cookie-файлы.в.Laravel........................................................................................................401 Получение.доступа.к.cookie-файлам...............................................................................401 Логирование...................................................................................................................................404 Когда.и.зачем.следует.выполнять.логирование..........................................................405 Внесение.записей.в.логи......................................................................................................405 Каналы.логирования.............................................................................................................406 Полнотекстовый.поиск.с.использованием.Laravel.Scout...............................................409 Установка.пакета.Scout.......................................................................................................409 Пометка.модели.для.индексирования............................................................................410
Оглавление Поиск.по.вашему.индексу...................................................................................................410 Очереди.и.Scout......................................................................................................................410 Выполнение.операций.без.индексирования.................................................................411 Условное.индексирование.моделей................................................................................411 Запуск.индексирования.вручную.с.помощью.кода...................................................411 Запуск.индексирования.вручную.с.помощью.интерфейса. командной.строки..................................................................................................................412 Тестирование.................................................................................................................................412 Сохранение.файлов...............................................................................................................412 Сессия........................................................................................................................................414 Кэш..............................................................................................................................................415 Cookie-файлы..........................................................................................................................415 Логирование............................................................................................................................416 Scout...........................................................................................................................................417 Резюме..............................................................................................................................................417 Глава 15. Почта.и.уведомления.....................................................................................................418 Почта.................................................................................................................................................418 Классическая.электронная.почта.....................................................................................419 Простейший.способ.использования.отправлений.....................................................419 Шаблоны.писем......................................................................................................................421 Методы,.доступные.в.build().............................................................................................422 Прикрепленные.файлы.и.встроенные.изображения.................................................423 Markdown-отправления.......................................................................................................424 Визуализация.отправлений.в.браузере..........................................................................426 Очереди.....................................................................................................................................426 Локальная.разработка..........................................................................................................427 Уведомления..................................................................................................................................428 Определение.метода.via().для.уведомляемых.объектов..........................................431 Отправка.уведомлений........................................................................................................432 Помещение.уведомлений.в.очередь................................................................................432 Предлагаемые.по.умолчанию.типы.уведомлений......................................................433 Тестирование.................................................................................................................................437 Электронная.почта................................................................................................................437 Уведомления...........................................................................................................................438 Резюме..............................................................................................................................................438 Глава 16. Очереди,.задания,.события,.трансляция.и.планировщик.................................439 Очереди............................................................................................................................................439 Зачем.нужны.очереди...........................................................................................................440 Базовая.конфигурация.очередей......................................................................................440
Оглавление 17 Задания.в.очереди..................................................................................................................441 Запуск.обработчика.очередей............................................................................................444 Обработка.ошибок.................................................................................................................445 Управление.очередью...........................................................................................................447 Очереди.для.поддержки.других.функций.....................................................................448 Laravel.Horizon..............................................................................................................................448 События...........................................................................................................................................449 Запуск.события.......................................................................................................................449 Прослушивание.события....................................................................................................451 Трансляция.событий.посредством.веб-сокетов.и.Laravel.Echo...................................454 Конфигурация.и.настройка................................................................................................455 Трансляция.события.............................................................................................................455 Получение.сообщения..........................................................................................................458 Продвинутые.инструменты.трансляции.......................................................................460 Laravel.Echo.(сторона.JavaScript-кода)..........................................................................464 Планировщик.................................................................................................................................469 Доступные.типы.задач.........................................................................................................470 Доступные.временные.интервалы...................................................................................470 Определение.часовых.поясов.для.запланированных.задач....................................472 Блокирование.и.наложение................................................................................................472 Обработка.выходных.данных.задачи..............................................................................473 Перехват.задач........................................................................................................................474 Тестирование.................................................................................................................................474 Резюме..............................................................................................................................................476 Глава 17. Хелперы.и.коллекции....................................................................................................477 Хелперы...........................................................................................................................................477 Массивы....................................................................................................................................477 Строки........................................................................................................................................479 Пути.приложения..................................................................................................................481 URL-адреса..............................................................................................................................482 Прочее........................................................................................................................................484 Коллекции.......................................................................................................................................486 Базовые.сведения...................................................................................................................487 Некоторые.методы.................................................................................................................489 Резюме..............................................................................................................................................493 Глава 18. Экосистема.инструментов.Laravel............................................................................494 Инструменты,.рассмотренные.в.книге..................................................................................494 Valet............................................................................................................................................494 Homestead.................................................................................................................................494
Оглавление Установщик.Laravel..............................................................................................................495 Mix...............................................................................................................................................495 Dusk............................................................................................................................................495 Passport......................................................................................................................................495 Horizon.......................................................................................................................................495 Echo.............................................................................................................................................496 Инструменты,.не.рассмотренные.в.книге............................................................................496 Forge...........................................................................................................................................496 Envoyer......................................................................................................................................496 Cashier........................................................................................................................................497 Socialite......................................................................................................................................498 Nova.............................................................................................................................................498 Spark...........................................................................................................................................498 Lumen.........................................................................................................................................498 Envoy..........................................................................................................................................499 Telescope....................................................................................................................................499 Другие.ресурсы.............................................................................................................................499 Глоссарий...............................................................................................................................................501 Об.авторе................................................................................................................................................511 Об.обложке............................................................................................................................................512
Эта книга посвящена моей семье. Тебе, Миа, моя маленькая принцесса и источник радости и энергии. Тебе, Малакай, мой маленький принц, искатель приключений и эмпат. Тебе, Терева, мое вдохновение, мой мотиватор, мое ребро.
Предисловие История.моего.знакомства.с.Laravel.вполне.заурядна:.много.лет.я.писал.код.на.PHP. и.активно.изучал.потенциал.Rails.и.других.современных.веб-фреймворков..В.Rails. меня.привлекало.прекрасное.сочетание.исходных.настроек.и.гибкости,.мощные. возможности.системы.управления.пакетами.стандартного.кода.Ruby.Gems,.а.также. наличие.активного.сообщества.программистов. Я.так.и.не.перешел.на.Rails,.чему.был.безумно.рад,.когда.узнал.о.Laravel..Он.взял. лучшее.от.Rails,.не.становясь.при.этом.его.клоном..Это.был.инновационный.фрейм- ворк.с.отличной.документацией.и.доброжелательным.сообществом. После.этого.я.начал.делиться.своим.опытом.изучения.Laravel:.вел.блог,.записывал. подкасты.и.выступал.на.конференциях..С.помощью.Laravel.я.написал.десятки. приложений.в.рамках.своей.основной.работы.и.дополнительных.проектов,.а.также. познакомился.лично.и.в.режиме.онлайн.с.разработчиками,.использующими.этот. фреймворк..Даже.имея.богатый.арсенал.инструментов.разработки,.я.наслаждаюсь,. когда.набираю.в.командной.строке.laravel new projectName. О чем эта книга Это.не.первая.книга.о.Laravel.и.не.последняя..Я.не.стремился.объяснить.каждую. строку.кода.или.шаблон.реализации,.поскольку.не.хотел.рассказывать.о.том,.что. может.устареть.после.обновления.Laravel..Я.хотел.написать.книгу,.которая.предо- ставляла.бы.разработчикам.обзор.и.давала.конкретные.примеры.требований.для. работы.в.кодовых.базах.Laravel.с.использованием.любой.функции.или.подсистемы. этого.фреймворка..Я.стремился.не.просто.дублировать.документацию,.а.помочь. вам.понять.основополагающие.концепции.Laravel. Laravel.—.это.мощный.и.гибкий.PHP-фреймворк.с.постоянно.растущим.сообще- ством.программистов.и.широкой.экосистемой.инструментов,.что.с.каждым.днем. повышает.его.привлекательность.и.доступность..Книга.предназначена.для.разра- ботчиков,.которые.уже.знают,.как.создавать.сайты.и.приложения,.и.хотят.узнать,. как.это.можно.эффективно.делать.с.помощью.Laravel. Документация.Laravel.всесторонняя.и.качественная..Если.вам.кажется,.что.я.недо- статочно.хорошо.осветил.определенную.тему,.то.рекомендую.ознакомиться.с.ее.более. подробным.описанием.в.онлайн-документации.по.адресу.https://laravel.com/docs.
О втором издании 21 Надеюсь,.в.книге.вы.найдете.оптимальный.баланс.между.теорией.и.практикой. в.виде.примеров.конкретного.применения,.а.по.прочтении.сможете.легко.написать. с.помощью.Laravel.целое.приложение.с.нуля. Для кого предназначена книга Книга.подойдет.для.читателя,.знающего.базовые.методы.объектно-ориентированного. программирования,.язык.PHP.(или.по.крайней.мере.общий.синтаксис.языков.C),. а.также.базовые.концепции.архитектурного.паттерна.«Модель.—.Представление.—. Контроллер».(Model.—.View.—.Controller,.MVC).и.обработки.шаблонов..Если.вы. никогда.не.создавали.сайт,.материал.книги.может.оказаться.слишком.сложным.. Но.если.у.вас.есть.опыт.программирования,.то.не.обязательно.знать.что-то.о.Laravel.—. я.объясню.все,.что.нужно,.начиная.с.простейшего.примера.Hello,.world!. Laravel.может.работать.в.любой.операционной.системе,.но.приведенные.здесь. примеры.команд.оболочки.bash.проще.запускать.в.Linux/macOS..Пользователям. Windows.будет.сложнее.выполнять.эти.команды.и.в.целом.применять.современные. средства.разработки.на.PHP,.однако,.следуя.инструкциям,.вы.сможете.установить. Homestead.(виртуальную.машину.Linux).и.запускать.все.необходимые.команды. Структура издания В.этой.книге.я.старался.придерживаться.хронологического.порядка:.сначала.рас- сматриваются.базовые.компоненты,.которые.вы.будете.применять.в.начале.созда- ния.веб-приложения.с.помощью.Laravel,.а.затем.—.менее.фундаментальные.и.реже. используемые.возможности. Главы.организованы.так,.чтобы.незнакомые.с.фреймворком.пользователи.могли. эффективно.усваивать.материал,.читая.книгу.по.порядку. Большинство.глав.заканчивается.двумя.разделами:.«Тестирование».и.«Краткие. итоги»..В.них.соответственно.показывается,.как.писать.тесты.для.описанных.воз- можностей,.и.проводится.общий.обзор.рассмотренного.материала. Книга.написана.для.Laravel.5.8,.но.охватывает.возможности.и.нововведения.син- таксиса.предыдущих.версий,.начиная.с.Laravel.5.1. О втором издании Первое.издание.книги.вышло.в.ноябре.2016.года.и.освещало.возможности.версий. Laravel.с.5.1.по.5.3..В.новом.издании.дополнительно.рассмотрены.возможности. версий.5.4–5.8.и.инструментов.Laravel.Dusk.и.Laravel.Horizon,.а.также.добавлена. глава.18,.посвященная.ресурсам.сообщества.и.дополнительным.пакетам.Laravel,. которые.не.были.охвачены.в.первых.17.главах.
Предисловие Условные обозначения В.этой.книге.используются.следующие.типографские.обозначения. Рубленый шрифт Используется.для.выделения.URL-адресов.и.адресов.электронной.почты. Курсивный шрифт Применяется.для.выделения.новых.терминов.и.слов,.на.которых.сделан.акцент. Моноширинный шрифт Используется.для.записи.листингов.программ,.а.также.для.выделения.в.тексте. таких.элементов,.как.имена.переменных.и.функций,.базы.данных,.типы.данных,. переменные.среды,.операторы.и.ключевые.слова,.имена.и.расширения.файлов. Полужирный моноширинный шрифт Предназначен.для.выделения.команд.или.другого.текста,.который.должен. вводиться.пользователем.без.каких-либо.изменений. Курсивный моноширинный шрифт Применяется.для.обозначения.в.коде.элементов,.которые.требуется.заменить. предоставленными.пользователем.значениями.или.значениями,.зависящими. от.контекста. {Курсивный моноширинный шрифт в фигурных скобках} Используется.для.выделения.имен.файлов.или.путей.к.файлам,.которые.требу- ется.заменить.предоставленными.пользователем.значениями.или.значениями,. зависящими.от.контекста. Так обозначается совет или предложение. Так обозначается общее примечание. Так обозначается предупреждение. Поскольку.эта.книга.охватывает.возможности.Laravel.версий.5.1–5.8,.в.книге.ис- пользуются.метки.для.обозначения.комментариев,.относящихся.к.той.или.иной. конкретной.версии..В.общем.случае.такая.метка.указывает,.в.какой.версии.Laravel.
была.введена.рассматриваемая.возможность.(так,.например,.метка.«5.3».означает,. что.рассматриваемая.возможность.доступна.только.в.Laravel.5.3.и.в.более.новых. версиях). Благодарности Первое издание Эта.книга.не.увидела.бы.свет.без.поддержки.моей.удивительной.жены.Теревы. и.понимания.(«Папа.пишет,.дружище!»).моего.сына.Малакая..В.силу.возраста.моя. дочь.Миа.не.осознавала.этого,.но.тоже.присутствовала.при.написании.книги,.и.по- тому.я.посвящаю.книгу.своей.семье..Работа.заставила.меня.не.раз.засиживаться. допоздна.и.проводить.выходные.дни.в.кофейнях.Starbucks,.и.я.очень.признателен. жене.и.детям.за.то,.что.они.поддерживали.и.вдохновляли.меня.уже.одним.своим. присутствием. В.ходе.написания.книги.меня.также.поддерживал.и.подбадривал.весь.коллек- тив.компании.Tighten,.а.некоторые.коллеги.даже.редактировали.примеры.кода. (особенно.хочется.отметить.Кита.Дамиани).и.помогали.мне.разобраться.с.осо- бенно.сложными.из.них.(например,.Адам.Уотан,.король.конвейера.коллекций).. Дэн.Шитц,.мой.партнер.в.компании.Tighten,.великодушно.подстраховывал.меня,. когда.приходилось.уходить.с.работы,.чтобы.поработать.над.книгой,.поддерживал. и.ободрял;.а.Дейв.Хиккинг,.наш.операционный.менеджер,.помог.найти.место.для. написания.в.моем.рабочем.графике. Тейлор.Отвел.заслуживает.благодарности.и.уважения.за.создание.фреймворка. Laravel,.что.обеспечило.работой.многих.людей.и.улучшило.жизнь.многих.разработ- чиков..Самой.высокой.оценки.достойны.его.забота.о.разработчиках.и.его.усилия.по. обращению.внимания.на.их.нужды.и.запросы,.созданию.позитивного.и.стимулиру- ющего.сообщества..Кроме.того,.я.хочу.поблагодарить.его.как.доброго.друга,.способ- ного.поддержать.и.подтолкнуть.к.новым.свершениям..Тейлор,.ты.—.лучший! Спасибо.Джеффри.Вэю.—.одному.из.лучших.онлайн-преподавателей..Он.познако- мил.меня.с.Laravel.и.продолжает.знакомить.с.этим.фреймворком.все.новых.и.новых. людей..Он.также.прекрасный.человек,.и.я.очень.рад,.что.могу.называть.его.другом. Спасибо.Джессу.Д’Амико,.Шону.Маккулу,.Йену.Лэндсману.и.Тейлору.за.то,.что. увидели.во.мне.ценного.участника.конференций.и.предоставили.мне.платформу. для.обучения..Спасибо.Дейлу.Риису.за.то,.что.помог.многим.людям.легко.освоить. Laravel.на.заре.появления.этого.фреймворка. Спасибо.всем,.кто.посвятил.свое.время.и.усилия.написанию.постов.в.блоге.по. фреймворку.Laravel,.особенно.тем,.кто.был.в.числе.первых:.Эрику.Барнсу,.Крису. Фидао,.Мэтту.Мачуге,.Джейсону.Льюису,.Райану.Табладе,.Дрису.Винтсу,.Максу. Сургаю.и.многим.другим. Благодарности 23
Бумажную книгу купить в Москве и в России с доставкой по всей России
Ниже показаны результаты поиска поисковой системы Яндекс. В результатах могут быть показаны как эта книга, так и похожие на нее по названию или автору.
- Книга: «Laravel. Полное руководство» — Мэтт Стаффер. | Лабиринт
Аннотация к книге «Laravel. Полное руководство«. Что отличает Laravel от других PHP-фреймворков? Скорость и простота. Стремительная разработка приложений, обширная экосистема и набор инструментов Laravel позволяют быстро создавать сайты и приложения, отличающиеся чистым удобочитаемым кодом. Мэтт Стаффер, известный преподаватель и ведущий разработчик, предлагает как общий обзор фреймворка, так и конкретные примеры работы с ним.
www.labirint.ru
Реклама
- Laravel. Полное руководство — купить книгу с доставкой…
В книжном интернет-магазине «Читай-город» вы можете заказать книгу Laravel. Полное руководство по низкой цене.
Стремительная разработка приложений, обширная экосистема и набор инструментов Laravel позволяют быстро создавать сайты и приложения, отличающиеся чистым удобочитаемым кодом. Мэтт Стаффер, известный преподаватель и ведущий разработчик, предлагает как общий обзор фреймворка, так и конкретные примеры работы с ним.
www.chitai-gorod.ru
Реклама
- «Laravel Полное руководство» Мэтт Стаффер… | Лабиринт
Интересные рецензии пользователей на книгу Laravel. Полное руководство Мэтт Стаффер: Классное чтиво. Решил с yii2 на laravel перейти, эта книга — единственное годное чтиво на русском.
www.labirint.ru
Реклама
- Канцтовары
Канцтовары: бумага, ручки, карандаши, тетради.
Ранцы, рюкзаки, сумки.
И многое другое.my-shop.ru
Реклама
- Книга Laravel. Полное руководство. 2-е издание • Стаффер…
В наличии «Laravel. Полное руководство. 2-е издание» автора (Стаффер М.), Эксмо-АСТ в интернет-магазине Book24 со скидкой! Отрывок из книги, отзывы, фото, цитаты, обложка. Быстрая доставка по России • p5616654.
Book24.ru
Реклама
- Laravel. Полное руководство. Стаффер Мэтт — купить книгу…
Полное руководство» (Стаффер Мэтт) в Интернет-магазине My-shop.ru. Низкая цена, доставка курьером и почтой, самовывоз.
Скорость и простота. Стремительная разработка приложений, обширная экосистема и набор инструментов Laravel позволяют быстро создавать сайты и приложения, отличающиеся чистым удобочитаемым кодом. Мэтт Стаффер, известный преподаватель и ведущий разработчик, предлагает как общий обзор фреймворка, так и конкретные примеры работы с ним.
My-shop.ru
Реклама
- Автор: Стаффер Мэтт | новинки 2023 | книжный интернет-магазин…
Лучшие и новые книги 2023 автора: Стаффер Мэтт в интернет-магазине Лабиринт.
Полное руководство. Стаффер Мэтт.
www.labirint.ru
Реклама
- Стаффер М. | Купить книги автора в интернет-магазине…
Стаффер М. — cписок всех книг авторa, лучшие произведения и новинки. Купить книги авторa Стаффер М. в интернет-магазине «Читай-город» с бесплатной доставкой по России.
Мэтт Стаффер, известный преподаватель и ведущий разработчик, предлагает как общий обзор фреймворка, так и конкретные примеры работы с ним. Опытным PHP-разработчикам книга поможет быстро войти в новую тему, чтобы реализовать проект на Laravel.
www.chitai-gorod.ru
Реклама
- Серия книг Бестселлеры O`Reilly | издательство Питер | Лабиринт
Большие проекты вырастают из малого. Так 30 лет назад с тоненькой брошюрки компьютерной тематики — руководства для пользователей и программистов — началась история издательского дома «Питер», которое на сегодняшний день является ведущим на Северо-Западе в сегменте отраслевой профессиональной литературы.
Мэтт Стаффер — Laravel. Полное руководство обложка книги. Нет в продаже.
www.labirint.ru
Реклама
- Мэтт С. «Laravel. 2-е изд.» — Нехудожественная литература…
Стремительная разработка приложений, обширная экосистема и набор инструментов Laravel позволяют быстро создавать сайты и приложения, отличающиеся чистым удобочитаемым кодом. Мэтт Стаффер, известный преподаватель и ведущий разработчик, предлагает как общий обзор фреймворка, так и конкретные примеры работы с ним. Опытным PHP-разработчикам книга поможет быстро войти в новую тему, чтобы реализовать проект на Laravеl.
market.yandex.ru
Реклама
- Владимир Сауль купить продукцию | Лабиринт
Сауль Владимир. Мэтт Стаффер — Laravel. Полное руководство обложка книги.
Мультимедиа для школьников и студентов. Программное обеспечение и обучение работе на ПК. Руководства, справочники и энциклопедии.
www.labirint.ru
Реклама
- Книги из серии «Бестселлеры O’Reilly» издательства Прогресс книга
Что отличает Laravel от других PHP-фреймворков? Скорость и простота. Стремительная разработка приложений, обширная экосистема и набор инструментов Laravel позволяют быстро создавать сайты и приложения, отличающиеся чистым удобочитаемым кодом. Мэтт Стаффер, известный преподаватель и ведущий разработчик, предлагает как общий обзор фреймворка, так и конкретные примеры работы с ним. Опытным PHP-разработчикам книга поможет быстро войти в новую тему, чтобы реализовать проект на Laravel.
www.chitai-gorod.ru
Реклама
- Книги информационные технологии – купить книги про компьютеры…
Информационные технологии купить в интернет-магазине book24.ru. 4466 книг в каталоге. Гарантия качества. Бесплатная доставка от 999р. Персональная бонусная программа. 8 (800) 333-65-23 — страница 79.
Book24.ru
Реклама
- Книги по программированию – купить книги по алгоритмам…
Программирование купить в интернет-магазине book24.ru. 1363 книг в каталоге. Гарантия качества. Бесплатная доставка от 999р. Персональная бонусная программа. 8 (800) 333-65-23 — страница 26.
Book24.ru
Реклама
- Серия книг Бестселлеры O`Reilly — книжные серии и сборники…
Book24: Бестселлеры O`Reilly купить в интернет-магазине book24.ru. Бесплатная доставка от 999р. Отправка в день заказа. Бонусная программа. Читайте рецензию и отзывы реальных покупателей. 6117633 8 (800) 333-65-23 — страница 2…
Book24.ru
Реклама
- Автор: Гринчик Н | новинки 2023 | книжный интернет-магазин…
УЖЕ ПОКУПАЛИ. Мэтт Стаффер — Laravel. Полное руководство обложка книги.
Полное руководство. Стаффер Мэтт. Питер: Бестселлеры O`Reilly.
www.labirint.ru
Реклама
- Каталог книг в интернет магазине Book24: заказать книги…
Закажите книги с доставкой почтой, курьером или в ближайший к вам пункт выдачи заказов на Book24. Официальный интернет магазин издательской группы ЭКСМО-АСТ Низкие цены Бесплатная доставка от 999р Гарантия качества Скидки и кэшбэк 8 (800) 333-65-23 — страница 9105.
Book24.ru
Реклама
- Научная литература — купить книги по технической и научной…
Научно-популярная литература купить в интернет-магазине book24.ru. 79998 книг в каталоге. Гарантия качества. Бесплатная доставка от 999р. Персональная бонусная программа. 8 (800) 333-65-23 — страница 966.
Book24.ru
Реклама
- Иллюстрация 7 из 9 для Создание сайтов своими руками на…
«Выразительный JavaScript. Современное веб-программирование»,Хавербеке Марейн. «Laravel. Полное руководство«,Стаффер Мэтт. «Интерфейс. Основы проектирования взаимодействия»,Купер Алан и др.
www.labirint.ru
Реклама
- Книга: «Laravel 8. Быстрая разработка веб-сайтов на…» | Лабиринт
Книга представляет собой полное описание фреймворка Laravel 8 для быстрой разработки сайтов на языке PHP. Дан краткий вводный курс для начинающих, в котором описывается разработка простого учебного сайта — электронной доски объявлений. Раскрыты основы программирования сайтов на Laravel. Приведено наиболее полное описание инструментов Laravel: моделей, контроллеров, шаблонов, средств обработки пользовательского ввода, включая валидаторы, сохранения выгруженных файлов, разграничения доступа, обработки…
www.labirint.ru
Реклама
- Иллюстрация 6 из 13 для Joomla! 3.0. Официальное руководство…
Шестая иллюстрация к книге Joomla! 3.0. Официальное руководство — Мэрриотт, Уоринг.
«Использование Docker»,Моуэт Эдриен. «HTTP/2 в действии»,Поллард Барри. «Laravel. Полное руководство«,Стаффер Мэтт. «Обработка естественного языка.
www.labirint.ru
Реклама
- Иллюстрация 8 из 10 для PHP. Рецепты программирования…
«Использование Docker»,Моуэт Эдриен. «Laravel. Полное руководство«,Стаффер Мэтт. «Объектно-ориентированное программирование в С++»,Лафоре Роберт. «Карьера программиста»,Лакман Макдауэлл Гейл.
www.labirint.ru
Реклама
- Иллюстрация 11 из 14 для Основы разработки веб-приложений…
«Паттерны разработки на Python. TDD, DDD и событийно-ориентированная архитектура»,Персиваль Гарри, Грегори Боб. «Laravel. Полное руководство«,Стаффер Мэтт. «Искусство программирования. Том 1. Основные алгоритмы»,Кнут Дональд Эрвин.
www.labirint.ru
Реклама
- Иллюстрация 13 из 16 для Полезное программирование.
«Laravel. Полное руководство«,Стаффер Мэтт. «Совершенный алгоритм. Алгоритмы для NP-трудных задач»,Рафгарден Тим. «JavaScript. Полное руководство«,Флэнаган Дэвид. «Язык программирования С++. Специальное издание»,Страуструп Бьерн.
www.labirint.ru
Реклама
- Иллюстрация 9 из 11 для IntelliJ IDEA. Профессиональное…
«Laravel. Полное руководство«,Стаффер Мэтт. «Создаем динамические веб-сайты с помощью PHP, MySQL, JavaScript, CSS и HTML5»,Никсон Робин. «Программирование на Java для начинающих»,Васильев Алексей Николаевич.
www.labirint.ru
Реклама
- Иллюстрация 12 из 19 для Android. Программирование для…
«Laravel. Полное руководство«,Стаффер Мэтт. «Python для всех»,Северанс Чарльз Р.
www.labirint.ru
Реклама
- Иллюстрация 12 из 24 для JavaScript и jQuery. Исчерпывающее…
Двенадцатая иллюстрация к книге JavaScript и jQuery. Исчерпывающее руководство — Дэвид Макфарланд.
«Laravel. Полное руководство«,Стаффер Мэтт. «Python для всех»,Северанс Чарльз Р.
www.labirint.ru
Реклама
- Иллюстрация 23 из 26 для Программирование на Java и C# для…
«Параллельное программирование на С++ в действии. Практика разработки многопоточных программ»,Уильямс Энтони. «Laravel. Полное руководство«,Стаффер Мэтт.
Полное руководство«,Шилдт Герберт. «Как программировать на С»,Дейтел Харви, Дейтел Пол Дж.
www.labirint.ru
Реклама
- Иллюстрация 11 из 16 для Linux. Руководство программиста…
Одиннадцатая иллюстрация к книге Linux. Руководство программиста — Джон Фуско.
«Laravel. Полное руководство«,Стаффер Мэтт.
www.labirint.ru
Реклама
- Иллюстрация 21 из 24 для JavaScript на примерах.
«Laravel. Полное руководство«,Стаффер Мэтт.
www.labirint.ru
Реклама
- Иллюстрация 30 из 51 для Программирование в C++ Builder…
«Искусство тестирования программ»,Сандлер Кори и др. «Как программировать на С++»,Дейтел Харви, Дейтел Пол Дж. «Laravel. Полное руководство«,Стаффер Мэтт. «1400 задач по программированию»,Златопольский Дмитрий Михайлович.
www.labirint.ru
Реклама
- Книга Laravel для web-разработчиков. Практическое руководство…
Практическое руководство по созданию профессиональных сайтов» автора (Кириченко А. и др.), Эксмо-АСТ в интернет-магазине Book24 со скидкой! Отрывок из книги, отзывы, фото, цитаты, обложка. Быстрая доставка по России • p6115857.
Book24.ru
Реклама
- Иллюстрация 10 из 19 для Моделирование электротехнических…
«Laravel. Полное руководство«,Стаффер Мэтт. «Алгоритмы.
www.labirint.ru
Реклама
Электронные книги купить в России, СНГ и по всему миру
Ниже показаны результаты поиска поисковой системы Яндекс. В результатах могут быть показаны как эта книга, так и похожие на нее по названию или автору.
- Laravel. Полное руководство — Мэтт Стаффер | Литрес
Полное руководство, Мэтт Стаффер в pdf или читать онлайн! Оставляйте и читайте отзывы о книге на Литрес! Скорость и простота. Стремительная разработка приложений, обширная экосистема и набор инструментов Laravel позволяют быстро создавать сайты и приложения, отличающиеся чистым удобочитаемым кодом. Мэтт Стаффер, известный преподаватель и ведущий разработчик, предлагает как общий обзор фреймворка, так и конкретные примеры работы с ним.
www.litres.ru
Реклама
- Отзывы о книге «Laravel. Полное руководство», рецензии на…
Читайте лучшие рецензии и отзывы читателей Литрес на книгу «Laravel. Полное руководство» Мэтт Стаффер.
www.litres.ru
Реклама
- Мэтт Стаффер — Новинки книг 2023 – скачать или читать онлайн
Мэтт Стаффер Последние новинки книг автора 2023 года. Медицина и здоровье. Секс / секс-руководства. Красота. Laravel. Полное руководство.
www.litres.ru
Реклама
- Все книги Мэтт Стаффер | Читать онлайн лучшие книги автора на…
На Литрес вы найдете все книги Мэтт Стаффер. Скачивайте, читайте или оставляйте отзывы.
Электронные книги на русском. Бестселлеры O’Reilly (Питер). Laravel. Полное руководство. 609 ₽.
www.litres.ru
Реклама
- Фреймворки – книги и аудиокниги – скачать, слушать или читать…
«Фреймворки» – скачивайте книги и аудиокниги в любом формате на сайте электронной библиотеке Литрес или читайте онлайн бесплатно.
www.litres.ru
Реклама
- PHP – книги и аудиокниги – скачать, слушать или читать онлайн…
PDF. Мэтт Стаффер. Laravel. Полное руководство. 0. 0. PDF. Владимир Дронов. Laravel 8. Быстрая разработка веб-сайтов на PHP.
www.litres.ru
Реклама
- Книги, похожие на «Laravel. Полное руководство»
Подборка, 11 книг. Книги, похожие на «Laravel. Полное руководство».
Практическое руководство по изучению языков программирования. 4,0.
www.litres.ru
Реклама
- PHP – новинки книг и аудиокниг скачать, слушать или читать…
Laravel 8. Быстрая разработка веб-сайтов на PHP. Читать. Дмитрий Приходько.
Мэтт Стаффер. Laravel. Полное руководство. 3,9. 9.
www.litres.ru
Реклама
- Марк Лой – серия книг Бестселлеры O’Reilly (Питер) – скачать по…
PDF. Мэтт Стаффер. Laravel. Полное руководство. 5,0. 3.
www.litres.ru
Реклама
- «Laravel 8. Быстрая разработка веб-сайтов на PHP», Владимир…
Книга представляет собой полное описание фреймворка Laravel 8 для быстрой разработки сайтов на языке PHP. Дан краткий вводный курс для начинающих, в котором описывается разработка простого учебного сайта – электронной доски объявлений. Раскрыты основы программирования сайтов на Laravel. Приведено наиболее полное описание инструментов Laravel: моделей, контроллеров, шаблонов, средств обработки пользовательского ввода, включая валидаторы, сохранения выгруженных файлов, разграничения доступа, обработки…
www.litres.ru
Реклама
На данной странице Вы можете найти лучшие предложения для покупки книги «Laravel, Полное руководство, Стаффер М., 2020» по лучшей цене в интернет магазинах Лабиринт, Буквоед, Читай-город, Литрес, My-shop, Book24, Books.ru, Литгид, Озон.
В этих официальных книжных интернет-магазинах вы можете купить недорого бумажную и электронную книгу по самой дешевой цене с доставкой по России и в другие страны. Также в этих магазинах можно купить книжные новинки и бестселлеры.
Официальные сайты интернет-магазинов по продаже книг в России и по всему миру:
- Лабиринт
- Читай-город
- Яндекс Маркет
- My-shop
- Литрес
- Book24
- УчМаг
Для формирования результатов поиска книг использован сервис Яндекс.XML.
Нашлось 10 млн ответов. Показаны первые 43 результата(ов).
Дата генерации страницы: пятница, 7 апреля 2023 г., 3:54:48 GMT