Использовать переменную php в файле Json

Я просто хочу создать языковой файл в json и получить переменные для отображения на моей странице, но я не могу найти способ сделать это.

Чего я хочу достичь (код):

$json = file_get_contents('lang/en.json');
$useLang = json_decode($json);

echo msg($useLang->user->hello, 'rawohah211');
// Hello rawohah211

Мой json прямо сейчас:

{
  "user": {
    "hello": "Hello {user}"
  }
}

Можно ли этого добиться с помощью PHP и json?

Что такое msg()? Вы можете использовать str_replace вместо {user} и значение параметра 2..

user3783243 26.03.2022 22:31

msg() — это просто функция php, которая создает p-элемент, чтобы я мог добавить стиль к любому сообщению. Я проверю в str_replace!

rawohah211 26.03.2022 22:32
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
2
2
36
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Одним из ключевых навыков в программировании является разбиение задачи на более мелкие части. В этом случае вам нужно решить несколько задач:

  1. Как мне загрузить JSON во что-то, с чем я могу работать в PHP, и как мне затем получить доступ к его частям?
  2. Как преобразовать измененную версию обратно в JSON?
  3. Как заменить определенный раздел строки?

Номер 1, который вы уже отсортировали - json_decode. По умолчанию он дает вам сочетание объектов и массивов, поэтому в вашем примере строка может быть прочитана и записана как $useLang->user->hello. (Лично я предпочитаю возвращаемую структуру всего массива, если вы используете json_decode($json, true), и в этом случае вместо этого будет $useLang['user']['hello'].)

Номер 2 так же проще - json_encode делает полную противоположность json_decode.

Вы заметите, что номер 3 не упоминает JSON, массивы или объекты — у вас есть строка "Hello {user}", и вы хотите, чтобы она читалась "Hello rawohah211" или что-то подобное. Для этого вам просто нужен str_replace. Если вам нужно сопоставить шаблон (множество похожих строк), посмотрите на preg_replace.

Другие вопросы по теме