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

Метод toJson

Метод toJson применяется к коллекциям, моделям Eloquent и другим объектам в Laravel, преобразуя их в строку JSON. Первым параметром передаются опции JSON-кодирования (битовые маски), вторым - максимальная глубина рекурсии. Если параметры не указаны, используются значения по умолчанию.

Синтаксис

<?php $json = $collection->toJson($options, $depth); ?>

Пример

Давайте преобразуем коллекцию чисел в JSON-строку:

<?php use Illuminate\Support\Collection; $collection = new Collection([1, 2, 3, 4, 5]); $res = $collection->toJson(); echo $res; ?>

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

"[1,2,3,4,5]"

Пример

Давайте преобразуем ассоциативный массив в JSON-строку:

<?php use Illuminate\Support\Collection; $data = [ 'name' => 'user', 'age' => 25, 'city' => 'London' ]; $collection = new Collection($data); $res = $collection->toJson(); echo $res; ?>

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

"{\"name\":\"user\",\"age\":25,\"city\":\"London\"}"

Пример

Давайте преобразуем модель Eloquent в JSON-строку:

<?php use App\Models\User; use Illuminate\Http\Request; class UserController extends Controller { public function index() { $user = User::first(); $res = $user->toJson(); echo $res; } } ?>

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

"{\"id\":1,\"name\":\"user\",\"email\":\"user@example.com\",\"created_at\":\"2024-01-01T00:00:00.000000Z\",\"updated_at\":\"2024-01-01T00:00:00.000000Z\"}"

Пример

Давайте преобразуем коллекцию моделей в JSON-строку:

<?php use App\Models\Article; use Illuminate\Http\Request; class ArticleController extends Controller { public function index() { $articles = Article::limit(3)->get(); $res = $articles->toJson(); echo $res; } } ?>

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

"[{\"id\":1,\"title\":\"article 1\",\"body\":\"text\",\"status\":\"published\"},{\"id\":2,\"title\":\"article 2\",\"body\":\"text\",\"status\":\"draft\"},{\"id\":3,\"title\":\"article 3\",\"body\":\"text\",\"status\":\"published\"}]"

Пример

Давайте используем опцию JSON_PRETTY_PRINT для форматирования вывода:

<?php use Illuminate\Support\Collection; $data = [ 'name' => 'user', 'age' => 25, 'city' => 'London' ]; $collection = new Collection($data); $res = $collection->toJson(JSON_PRETTY_PRINT); echo $res; ?>

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

"{\n \"name\": \"user\",\n \"age\": 25,\n \"city\": \"London\"\n}"

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

  • метод toArray,
    который преобразует коллекцию в массив PHP
  • метод make,
    который создает новый экземпляр коллекции
  • метод all,
    который возвращает все элементы коллекции
  • функция collect,
    которая создает коллекцию из переданных данных
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить