Тот самый PHP-фреймворк для веб-ремесленников

REST-маршрутизация

Route::get('/', function()
{
  return 'Привет, мир!';
});

Простая работа с данными

Post::with('comments')
  ->where('public', 1)
  ->orderBy('created_at')
  ->get();

Расширенные шаблоны

@foreach ($users as $user)
  <p>{{{ $user->name }}}</p>
  @include('user.info', $user)
@endforeach
Может войдёшь?
Черновики Написать статью Профиль

Статьи

Тестирование модулей

перевод документация 3.x

Содержание

Основы

Модульное тестирование позволяет проверить код и убедиться, что он работает правильно. Многие утверждают, что вы должны еще написать тесты, прежде чем написать свой код! Laravel открывает прекрасную интеграцию с популярными библиотеками тестирования [PHPUnit] (http://www.phpunit.de/manual/current/en/), что позволяет легко писать тесты. На самом деле, Laravel включает в себя сотни модульных тестов!

Создание класса теста

Все тесты приложения размещаются в application/tests. В этом каталоге вы найдете основной example.test.php файлы. Откройте его и посмотрите на класс, он включает в себя:

<?php

class…

Работа со строками

перевод документация 3.x

Содержание

Капитализация и др.

Класс Str предоставляет три способа манипулирования регистрами символов в строке: upper, lower, и title. Это более "интеллигентная" версия PHP strtoupper, strtolower, и ucwords методов. Более "интеллигентная", потому что поддерживает UTF-8, если multi-byte string PHP установлено на сервер. Использование:

echo Str::lower('I am a string.');

echo Str::upper('I am a string.');

echo Str::title('I am a string.');

Ограничения слов и символов

Ограничение символов в строке:
echo…

Проверка запросов

перевод документация 3.x

Содержание

Работа с URI

Получение текущего URI запроса:
echo URI::current();
Получение определенного сегмента URI:
echo URI::segment(1);
Возврат значения по умолчанию если сегмент отсутствует (не установлен):
echo URI::segment(10, 'Foo');
Получение полного URI запроса, включая строку параметров:
echo URI::full();

Иногда вам может понадобиться сравнить текущий URI с заданной строкой, или он начинается с заданной строки. Примеры:

Определение, что URI есть "home":
if (URI::is('home'))
{
    // The current URI is "home"!
}
Определение, что URI начинатеся с "docs/":
if URI::is('docs/*'))
{
    // The current URI begins…

Ошибки и логирование

перевод документация 3.x

Содержание

Базовая конфигурация

Все опции кофигурирования обработки ошибок находятся в файле application/config/errors.php.

Игнорируемые ошибки

Опция ignore содержит массив уровней ошибок, которые будут игнорироваться Laravel. При "ignored" не будет производиться остановка выполнения скрипта при возникновении указааных ошибок. Тем не менее, эти ошибки будут залогированы, если логирование включено.

Детализация ошибок

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

Локализация

перевод документация 3.x

Содержание

Основы

Локализация это процесс перевода вашего приложения на другие языки. Класс Lang предлагает простой механизм организации и запроса текста мультиязычного приложения.

Все языковые файлы находятся в директории application/language. В самой директории application/language вы создаете директорию для каждого языка. Например, если у вас предусмотрен английский и испанский языки, то в директории language вы создаете поддиректории en и sp.

Каждая языковая директория может иметь много разных языковых файлов. Каждый языковый файл содержит массив со строками на определенном языке. Фактически, у языковых файлов такая же структура, как и…

Koka

Если Вы заинтересованы в локализации ПО, я рекомендую Вам использовать этот инструмент на базе web: https://poeditor.com/

IoC Контейнер

перевод документация 3.x

Определения

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

IoC контейнеры помогут сделать ваше приложение более гибким и тестируемым. Так как вы можете установить альтернативные реализации интерфейса с контейнером, вы можете изолировать код, который вы тестируете, от внешних зависимостей с помощью [заглушек и имитаторов] (http://martinfowler.com/articles/mocksArentStubs.html).

Регистрация объекта

Регистрация создания объекта в IoC…

Laravel 3 - документация

перевод документация 3.x

Вступление

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

Кто использует Laravel?

Laravel это мощный фреймворк, обладающий гибкостью и выразительностью. Новые пользователи Laravel могут пользоваться такой-же легкостью в разработке, какой обладают многие популярные легкие фреймворки. Более продвинутые пользователи оценят возможности модульной компоновки кода, которые возможны…

Работа с файлами

перевод документация 3.x

Содержание

Чтение файлов

Получение содержимого файла:
$contents = File::get('path/to/file');

Запись файлов

Запись в файл:
File::put('path/to/file', 'file contents');
Добавление в файл:
File::append('path/to/file', 'appended file content');

Выгрузка файлов

Передача содержимого $_FILES в постоянное место хранения (файл):
Input::upload('picture', 'path/to/pictures', 'filename.ext');

Примечание: Вы можете легко проверять загрузку файлов, используя класс Validator.

Расширения файлов

Получение расширения файла:
File::extension('picture.png');

Проверка…

macik

И еще вопрос, а после работы с файлом, laravel освобождает ресурсы? Или надо что то сделать?

События

перевод документация 3.x

Содержание

основы

События обеспечивают хороший способ построения не связанных приложений, и позволяет встраивать плагины в ядро ​​приложения без изменения кода.

Включение события

Для включения события, просто сообщите классу Event имя события, которое нужно включить:

Включение события:
$responses = Event::fire('loaded');

Заметьте, что мы присваиваем результат метода fire переменной. Этот метод возвращает массив, содержащий ответы от всех прослушиваемых событий.

Иногда требуется включить событие, но получить только первый ответ от него:

Включение события для получения только первого ответа:
$response = Event::first('loaded');

Шифрование

перевод документация 3.x

Содержание

Основы

Класс Crypter в Laravel предоставляет простой интерфейс для двустороннего шифрования. По умолчанию используется AES-256, предоставленный расширением PHP Mcrypt.

Примечание: Mcrypt PHP должен быть установлен на ваш сервер.

Шифрование строки

Шифрование указанной строки:
$encrypted = Crypter::encrypt($value);

Дешифровка строки

Дешифровка строки:
$decrypted = Crypter::decrypt($encrypted);

примечание: Необходимо отметить, что расшифрованы могут быть только строки, которые были зашифрованы с использованием вашего ** key ** ключа из application/config/application.php.

Назад | ДальшеДвижется на Habravel