Удаление пустых строк шаблона php

O
На сайте с 23.09.2014
Offline
76
1939

Здравствуйте. Скажите кто знает как средствами php в содержимом html - странице убрать пустые строки?

Например есть такая html - страница при просмотре кода в браузере:


<html>
<head>
<title>Станица</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
</head>

<body>
<div class="main">

<div class="mod">
<ul>

<li>
<img src="/img/static.png">
<a href="index.php?mod=static">
<h3>Статические страницы</h3>
</a>
</li>



<li>
<img src="img/profile.png">
<a href="index.php?mod=profile">
<h3>Профиль пользователя</h3>
</a>
</li>


<li>
<img src="/img/post.png">
<a href="index.php?mod=post">
<h3>Отправка сообщений</h3>
</a>
</li>



</ul>
</div>


</div>
</body>
</html>

Нужно сделать чтобы она выглядела так:


<html>
<head>
<title>Станица</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
</head>
<body>
<div class="main">
<div class="mod">
<ul>
<li>
<img src="/img/static.png">
<a href="index.php?mod=static">
<h3>Статические страницы</h3>
</a>
</li>
<li>
<img src="img/profile.png">
<a href="index.php?mod=profile">
<h3>Профиль пользователя</h3>
</a>
</li>
<li>
<img src="/img/post.png">
<a href="index.php?mod=post">
<h3>Отправка сообщений</h3>
</a>
</li>
</ul>
</div>
</div>
</body>
</html>

Я пытался решить эту задачу так:


//Загрузка html - страницы в строковую переменную
$template = file_get_contents($tpl_name);
// Удаление пустых строк в html
$template = str_replace(array("\n"), "", $template);

Но что то не работает

Если б была такая возможность чтобы место пустого значения примере замены в строках поставить что то на подобии Backspace:

$template = str_replace("mytag", Backspace, $template);

Тогда пустые строки не возникали, и вопрос можно б было закрыть.

PN
На сайте с 22.08.2012
Offline
103
#1


//Загрузка html - страницы в строковую переменную
$template = file_get_contents($tpl_name);
// Удаление пустых строк в html
$template = str_replace(array("\r", "\n"), "", $template);

а так?

Мой совет помог? Не скупись! Bitcoin 1Lseddet1o1B6odgXQHbGaWGwRkt1Db8Ef Ethereum 0x450f1a17461e25194B7F9226cDEe70173F39e1e1
O
На сайте с 23.09.2014
Offline
76
#2
proksey-net:
а так?

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

LEOnidUKG
На сайте с 25.11.2006
Offline
1762
#3

Можно тупой вопрос? А зачем вам это? :)

✅ Мой Телеграм канал по SEO, оптимизации сайтов и серверов: https://t.me/leonidukgLIVE ✅ Качественное и рабочее размещение SEO статей СНГ и Бурж: https://getmanylinks.ru/ ✅ Настройка и оптимизация серверов https://getmanyspeed.ru/
VertuOzz
На сайте с 20.07.2010
Offline
123
#4

$template = preg_replace( "#\s*?\r?\n\s*?(?=\r\n|\n)#s" , "" , $template );
siv1987
На сайте с 02.04.2009
Offline
427
#5

preg_replace('/(\s*[\r\n])+/', "\n", $template);

K
На сайте с 03.06.2015
Offline
45
#6

Формат хтмля абсолютно не важен. Если стили не подразумевают отсутствие текстовых нод между тегами, а иначе переделайте стили так, чтобы эти ноды не колебли и все.

С другой стороны никто вам не мешает исправить шаблоны, то есть убить _там_ все переносы и лишние пробелы.

MYSQL PHP JS HTML CSS SEO TXT США СССР
O
На сайте с 23.09.2014
Offline
76
#7

VertuOzz, Спасибо, то что надо!

RAS
На сайте с 27.11.2005
Offline
126
RAS
#8

а не проще поставить фильтр для чистки и удаления всего на лету ? тот же pagespeed ?

Администрируем сервера, впс, вдс. Ускоряем загрузку сайтов - DLE, Word Press, Joomla, Modx... Настраиваем безопасность. Ручная чистка rootkit/malware/вирусов. (/ru/forum/867860) Разработка - shell/bash/sh/python/perl.

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