РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
1108 of 1392 menu

Метод swap

Метод swap класса Str выполняет замену подстрок в строке. В отличие от стандартной функции str_replace, этот метод принимает ассоциативный массив, где ключи - это искомые подстроки, а значения - подстроки для замены. Метод возвращает объект Stringable, что позволяет использовать цепочки вызовов. Первым параметром передаётся ассоциативный массив замен, вторым - исходная строка или объект Stringable.

Синтаксис

<?php use Illuminate\Support\Str; $res = Str::swap($search, $subject); ?>

Пример

Давайте заменим плейсхолдеры в строке на реальные значения:

<?php use Illuminate\Support\Str; $search = [ ':name' => 'John', ':age' => 25, ':city' => 'New York' ]; $res = Str::swap($search, 'Name: :name, Age: :age, City: :city'); echo $res; ?>

Результат выполнения кода:

"Name: John, Age: 25, City: New York"

Пример

Метод swap также работает с объектом Stringable, что позволяет строить цепочки вызовов:

<?php use Illuminate\Support\Str; $search = [ '[name]' => 'Alice', '[role]' => 'Admin', '[status]' => 'Active' ]; $res = Str::of('User: [name], Role: [role], Status: [status]') ->swap($search) ->upper(); echo $res; ?>

Результат выполнения кода:

"USER: ALICE, ROLE: ADMIN, STATUS: ACTIVE"

Пример

Метод может заменить несколько разных плейсхолдеров в одном вызове:

<?php use Illuminate\Support\Str; $search = [ '{id}' => 5, '{title}' => 'Laravel Guide', '{author}' => 'John Doe' ]; $template = 'Article {id}: {title} by {author}'; $res = Str::swap($search, $template); echo $res; ?>

Результат выполнения кода:

"Article 5: Laravel Guide by John Doe"

Смотрите также

  • метод replace,
    который заменяет одну подстроку на другую
  • метод replaceFirst,
    который заменяет первое вхождение подстроки
  • метод replaceLast,
    который заменяет последнее вхождение подстроки
  • метод remove,
    который удаляет заданные подстроки из строки
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить