PHP. Не получается вставить текст в переменную с нужной табуляцией

12
R
На сайте с 03.08.2012
Offline
131
1144

Приветствую!

Подскажите, пожалуйста, как сделать, чтобы табуляция правильно выводилась при подстановки HTML в переменную.

Есть такой код:


$html = "@section('content')

<h2>Заголовок</h2>
#include_links#

@endsection";

$links = "<ul>
#foreach_links#
</ul>";

$foreach_links = "<li><a href='#'>link</a></li>
<li><a href='#'>link</a></li>
<li><a href='#'>link</a></li>";

$html = str_replace('#include_links#', $links, $html);
$html = str_replace('#foreach_links#', $foreach_links, $html);

echo $html;

В итоге выводит такой HTML:


@section('content')

<h2>Заголовок</h2>
<ul>
<li><a href='#'>link</a></li>
<li><a href='#'>link</a></li>
<li><a href='#'>link</a></li>
</ul>

@endsection

Как сделать так, чтобы выводил HTML с такой табуляцией:


@section('content')

<h2>Заголовок</h2>
<ul>
<li><a href='#'>link</a></li>
<li><a href='#'>link</a></li>
<li><a href='#'>link</a></li>
</ul>

@endsection

Вроде была какая-та функция, которая подставляет код не нарушая табуляцию.

Вроде бы file_get_contents() с каками-то параметрами. Но что-то не нахожу информации.

P.S. Все переменные идут из базы данных, по этому просто руками в PHP коде поставить табуляцию не вариант.

owx
На сайте с 27.06.2009
Offline
100
owx
#1

Добавляйте в нужное место \t

R
На сайте с 03.08.2012
Offline
131
#2
~AL~:
Добавляйте в нужное место \t

В том то и проблема.

Что все переменные берутся из БД.

Шорткод может стоять в любом месте.

По этому я не знаю куда вставлять \t и вообще какое их количество вставлять.

S
На сайте с 30.09.2016
Offline
469
#3
revered:
В итоге выводит такой HTML:

Как записали, так и вывелся.

revered:
Как сделать так, чтобы выводил HTML с такой табуляцией:
Записать так. как надо.
Отпилю лишнее, прикручу нужное, выправлю кривое. Вытравлю вредителей.
totamon
На сайте с 12.05.2007
Offline
437
#4
revered:
В том то и проблема.

какой смысл у вашей проблемы? на кой вам эта табуляция в коде?🍿

Домены и хостинг https://8fn.ru/regru | Дедик от 3000р https://8fn.ru/73 | VPS в Москве https://8fn.ru/72 | Лучшие ВПС, ТП огонь, все страны! https://8fn.ru/inferno | ХОСТИНГ №1 РОССИИ https://8fn.ru/beget
R
На сайте с 03.08.2012
Offline
131
#5
totamon:
какой смысл у вашей проблемы? на кой вам эта табуляция в коде?🍿

PHP скрипт генерирует HTML код.

Скажем так автоматическая верстка по параметрам, которые переданы в PHP скрипт. (шорткоды)

Этот код будет дорабатывать верстальщик, по этому он должен быть читабельным.

Когда проблемы с табуляцией, код становиться не читабельным и верстальщику приходиться табуляцию вручную проставлять.

Хотелось бы, чтобы скрипт это делал автоматически.

NothingMatters
На сайте с 12.06.2017
Offline
45
#6
revered:
PHP скрипт генерирует HTML код.
Скажем так автоматическая верстка по параметрам, которые переданы в PHP скрипт. (шорткоды)

Этот код будет дорабатывать верстальщик, по этому он должен быть читабельным.
Когда проблемы с табуляцией, код становиться не читабельным и верстальщику приходиться табуляцию вручную проставлять.

Хотелось бы, чтобы скрипт это делал автоматически.

Что это за верстальщик который не может нажать автоформатирование в IDE? Он в notepad верстает?

PS

Как я вижу это Laravel. Вы там совсем упоролись так вьюхи генерить? Кто придумал так говнокодить?

ME
На сайте с 03.07.2017
Offline
66
#7
revered:
PHP скрипт генерирует HTML код.
Скажем так автоматическая верстка по параметрам, которые переданы в PHP скрипт. (шорткоды)

Этот код будет дорабатывать верстальщик, по этому он должен быть читабельным.
Когда проблемы с табуляцией, код становиться не читабельным и верстальщику приходиться табуляцию вручную проставлять.

Или эта либа тоже может помочь - https://github.com/********/html-beautifier

Хотелось бы, чтобы скрипт это делал автоматически.

Если этот код он будет редактировать в вебе, то оберните его в ace aditor. Он умеет сам форматировать.

Если на десктопе в ide - пусть шорткат выучит.

R
На сайте с 03.08.2012
Offline
131
#8
NothingMatters:
Что это за верстальщик который не может нажать автоформатирование в IDE? Он в notepad верстает?

PS
Как я вижу это Laravel. Вы там совсем упоролись так вьюхи генерить? Кто придумал так говнокодить?

А как их генерить? Подскажите классное решение.

ME
На сайте с 03.07.2017
Offline
66
#9
revered:
А как их генерить? Подскажите классное решение.

Верстку всю кидай во вьюху. Так же во вьюху передавай данные. И уже данные подставляй в верстку во вьюхе

R
На сайте с 03.08.2012
Offline
131
#10
MkrtElion:
Верстку всю кидай во вьюху. Так же во вьюху передавай данные. И уже данные подставляй в верстку во вьюхе

Вы не совсем поняли как это работает.

Скрипт не как ни связан с проектом на Laravel.

Он на отдельном домене генерирует готовую вьюху исходя из заданных параметров.

Эта вьюха сохраняется в проекте с Laravel и с ней уже работает верстальщик/программист, как с нормальной вьюхой.

Разумеется, никто не генерирует таким PHP скриптов вьюху в самом приложении Laravel :)

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий