Метод of
Метод of класса Str создаёт новый экземпляр
объекта Stringable из переданной строки. Это позволяет
использовать цепочки методов для обработки строк, делая код
более читаемым и удобным. Метод принимает один параметр -
строку для обработки.
Синтаксис
<?php
use IlluminateSupportStr;
use IlluminateSupportStringable;
$string = Str::of($string);
?>
Пример
Давайте создадим объект Stringable из строки и применим
цепочку методов для преобразования:
<?php
use IlluminateSupportStr;
$res = Str::of('hello world')
->upper()
->replace('WORLD', 'LARAVEL')
->lower();
echo $res;
?>
Результат выполнения кода:
"hello laravel"
Пример
Метод of удобно использовать для проверки содержимого
строки с помощью цепочки методов:
<?php
use IlluminateSupportStr;
$email = 'user@example.com';
$res = Str::of($email)
->contains('@')
? 'Valid email'
: 'Invalid email';
echo $res;
?>
Результат выполнения кода:
"Valid email"
Пример
С помощью метода of можно удобно работать с длинными
строками, применяя несколько преобразований подряд:
<?php
use IlluminateSupportStr;
$text = ' Это пример текста с лишними пробелами ';
$res = Str::of($text)
->trim()
->title()
->replace('Лишними', 'ненужными');
echo $res;
?>
Результат выполнения кода:
"Это Пример Текста С Ненужными Пробелами"
Пример
Метод of особенно полезен при работе с данными
из базы данных:
<?php
namespace AppHttpControllers;
use AppModelsArticle;
use IlluminateSupportStr;
class ArticleController extends Controller
{
public function index()
{
$article = Article::find(1);
$res = Str::of($article->title)
->slug()
->replace('-', '_');
echo $res;
}
}
?>
Результат выполнения кода:
"my_article_title"
Смотрите также
-
класс
Stringable,
который возвращается методомof -
метод
contains,
который проверяет наличие подстроки -
метод
slug,
который преобразует строку в URL-формат -
метод
str,
который является вспомогательной функцией дляStr::of