Как преобразовать файл константы TYPO3 Typoscript в массив или формат JSON?

#php #arrays #json #typo3 #typoscript

#php #массивы #json #typo3 #typoscript

Вопрос:

Ниже приведен мой файл константы TYPO3 Typoscript, и я хочу преобразовать этот файл в формат массива с помощью php. (Я использую фреймворк Laravel 5.5).

Это мой файл constant.ts:

 settings {
  social {
    # cat=jay: advanced/120/100; type=integer; label=Facebook page
    facebook = http://www.facebook.com
    # cat=jay: advanced/120/110; type=integer; label=Twitter account
    twitter = https://twitter.com
    # cat=jay: advanced/120/120; type=integer; label=Google Plus Account
    google = https://plus.google.com
    # cat=jay: advanced/120/130; type=integer; label=Direct Mail
    mail = jay@gmail.com
  }

  # cat=jay: advanced/120/140; type=string; label=Path to logo file
  logo = 
}
  

Что я делаю:
Я прочитал этот файл с помощью

 $jsonString = file_get_contents(storage_path() . "/jay/Configuration/TypoScript/Constants/Settings.ts");
  

Итак, как преобразовать этот файл в соответствующий формат массива или JSON?

Комментарии:

1. Вам это нужно напрямую из констант или можно получить из проанализированной конфигурации typoscript?

2. Привет @u_mulder Спасибо за предложение. Но я хочу преобразовать этот файл в формат json или массива с помощью Laravel PHP, а не в typo3. итак, как преобразовать этот файл с помощью coding? помогите мне.

3. Привет @jokumer Я использую только файл константы typo3, а не всю структуру

4. Я не использую typo3, но я использовал файл константы typo3 для чтения этой переменной и преобразования в формат json или массива в Laravel (PHP).

Ответ №1:

Вы могли бы проанализировать его из основной функции. глядя в API, я бы рассмотрел:

typo3 /CMS /Core /TypoScript /Анализатор /TypoScriptParser::parse()

https://api.typo3.org/typo3cms/8/html/_typo_script_parser_8php_source.html#l00230