[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: html внутри php
Виталий837
Как вывести много строчный html внутри php

echo"<html код>
<html код>
<html код>"
;

Не работает(




Спустя 1 минута, 19 секунд (12.06.2011 - 18:19) XCross написал(а):
Код то покажи.

Спустя 1 минута, 29 секунд (12.06.2011 - 18:21) allplayer написал(а):
echo'<html код>
<html код>
<html код>'
;

Вместо двух поставь одну кавычку

Спустя 2 минуты, 22 секунды (12.06.2011 - 18:23) XCross написал(а):
Да это роли не играет. Может у него в html-коде кавычки есть и отсюда проблемы.

Спустя 21 секунда (12.06.2011 - 18:23) Lightt написал(а):
allplayer


Не факт, там вообще за кавычками надо следить, такой код работать не будет -

 echo '<html>привет<br>'allplayer' ';

Спустя 1 минута, 57 секунд (12.06.2011 - 18:25) XCross написал(а):
ну да это ежу понятно

Спустя 4 минуты, 51 секунда (12.06.2011 - 18:30) AlmazDelDiablo написал(а):
echo <<<HTML
Тут любой HTML, даже с кавычками.
HTML;

Спустя 39 минут, 32 секунды (12.06.2011 - 19:10) allplayer написал(а):
Пусть так сделает:
?>

lalalalalalal

<?

Спустя 5 минут, 51 секунда (12.06.2011 - 19:16) inpost написал(а):
AlmazDelDiablo
Привет Попов... Уже должен был переучиться за 10 месяцев :)

allplayer
не используй сокращенный вид <? , только полный <?php

Виталий837
echo "<html код> <html код> <html код>";
- работает, но если внутри встречается двойная кавычка - вывод данных закрывается, и всё дальнейшее считается как PHP команды, а их нету, значит и ошибка. Тут надо кавычки экранизировать. Показываю пример на обычном <span style="display:block">, варианты вывода:

echo "<span style=\"display:block\">"; // экранирование кавычек
echo '<span style="display:block">'; // теперь уже одинарные кавычки не будут работать, но при правильной верстке их не должно быть ВООБЩЕ!
// если брать второй пример, но переменные вставляем так, и перенос так:

echo '<span style="display:'.$block.'">'."\n\r";


Теперь есть вообще самый быстрый способ, и очень удобный в форматировании, текст внутри условия:
<?php
if($people = 'good') {
?>

<html>
<
head>
<
body>

<?php
}
?>


Ну а если прям вообще профессионалом хочешь стать, надо разделять по модели MVC: HTML представление и PHP код. Более подробно тут: irbis-team.com

Спустя 43 минуты, 41 секунда (12.06.2011 - 19:59) AlmazDelDiablo написал(а):
Цитата (inpost @ 12.06.2011 - 20:16)
AlmazDelDiablo
Привет Попов... Уже должен был переучиться за 10 месяцев smile.gif

Я Попова в жизни не читал. А такой вариант, ИМХО, очень удобен, если надо вывести блок HTML-a без добавлений в него какого-либо PHP. Кстати, вы же меня и учили так сделать wink.gif

Спустя 2 часа, 21 минута, 2 секунды (12.06.2011 - 22:20) inpost написал(а):
AlmazDelDiablo
Тебя никто так не учил делать.
<<<HERE - используется для других целей, но не в связке с echo или print.

Спустя 15 часов, 14 минут, 28 секунд (13.06.2011 - 13:35) Nord написал(а):
Цитата (inpost)

<<<HERE - используется для других целей, но не в связке с echo или print.

Что же мешает использовать heredoc в этой связке?

Спустя 3 минуты, 40 секунд (13.06.2011 - 13:39) nugle написал(а):
inpost
а где это используется?

Спустя 4 часа, 37 минут, 4 секунды (13.06.2011 - 18:16) inpost написал(а):
Nord
Давай говорить так, во первых, ничего не видно, стили и т.д., во вторых: для этого можно просто закрыть PHP ?> и ввести HTML как тебе надо, в третьих - разделение HTML и PHP, та же модель MVC просто напросто убивает вообще echo <<<HERE;

nugle
Когда в переменную надо добавить текст. Либо через буфер ob_start, либо так:
$var = <<<HERE , именно не парясь с кавычками и т.д.

Спустя 2 часа, 5 минут, 51 секунда (13.06.2011 - 20:21) Nord написал(а):
inpost
Во-первых, heredoc придуман не только для HTML. Он очень удобен, например, для вывода коротких xml-файлов

Во-вторых, если вы говорите, что ничего не видно, нужно все же указать, что конкретно. Я вот например не понял, какие стили я должен видеть

В-третьих, конструкции вида:

if($people = 'good') { ?>
<html>
<
head>
<
body>
<?php
}

Выглядят, мягко говоря, неэстетично, особенно, если таких вставок много: попробуй разбери, где еще html, а где уже php. И подсветка синтаксиса во многих реакторах этому способствует

В-четвертых, а причем здесь MVC? Ну, пускай heredoc отвечает за букву V. Почему он не может быть представлением?

Нет никаких объективных причин утверждать, что писать: echo <<<HERE - неверно и надо за это бить по рукам.
Есть инструмент, надо просто уметь им пользоваться

Спустя 8 минут, 21 секунда (13.06.2011 - 20:30) neadekvat написал(а):
Nord, inpost говорит о том, что в heredoc html код не подсвечивается. А вот в том случаи, который показал ты - вполне. К тому же, я бы записал это иначе (более того, записываю), для очевидности:
if($people = 'good'):
?>
<html>
<
head>
<
body>
<?php
endif;

Спустя 11 минут, 9 секунд (13.06.2011 - 20:41) Nord написал(а):
neadekvat
Ок, если в этом вся трагедия, то inpost'у стоило написать:

Цитата

Дорогой, AlmazDelDiablo
Ваш совет конечно правильный, но я бы посоветовал использовать <?php ?>, вместо heredoc, потому что в этом случае, html-код будет подсвечен, что очень удобно


Но не вводить в заблужение

Спустя 1 минута, 14 секунд (13.06.2011 - 20:42) inpost написал(а):
Nord
он работает медленно, подсветки 0, не отвечает профессиональному программированию. Этого должно быть достаточно, но а если ты так фанатеешь от всяких там недо-приёмов, действуй, на фоне таких программистов, такие как я будут выделяться с особой припиской =)

Спустя 1 минута, 5 секунд (13.06.2011 - 20:43) inpost написал(а):
Nord
И не надо мне тыкать, как я должен писать, и как не должен. Я написал так, как считаю нужным, просто некоторым надо немного шевелить извилинами и понимать, про какие стили имеется ввиду, и это не так сложно, ведь неадекват же сразу понял.

Спустя 3 минуты, 10 секунд (13.06.2011 - 20:46) Nord написал(а):
inpost
Второе утверждение объективно, остальные 3 нет. Думаю, вам стоит немного подрасти, чтобы выбирать инструменты по потребности, а не религии

P.S. Сам использую для вывода HTML в таких случаях <?php ?> smile.gif

Спустя 2 минуты, 52 секунды (13.06.2011 - 20:49) neadekvat написал(а):
Цитата (Nord @ 13.06.2011 - 21:46)
Думаю, вам стоит немного подрасти, чтобы выбирать инструменты по потребности, а не религии

Сейчас в моде (и не потому, что звучит круто, а потому что удобно) использовать MVC (или приближенные к ней модели), где html выделяется в шаблоны.
Так вот, не использовать же в шаблонах heredoc? Ведь в них идет вкрапление php в html, а не наоборот.

Спустя 3 минуты, 13 секунд (13.06.2011 - 20:53) inpost написал(а):
Nord
Говорить о возрасте - это низко, а мне нет времени общаться с низкими слоями общества. Прощай.
А ТС уже получил от меня качественные советы.

Спустя 5 минут, 56 секунд (13.06.2011 - 20:58) Nord написал(а):
Цитата (neadekvat)

Так вот, не использовать же в шаблонах heredoc?

Ну это смотря какие шаблоны smile.gif
Я повторюсь, если мне понадбится вывести большой кусок HTML я все это выведу через ?><?php
Но в случае вывода коротких xml выберу heredoc, т.к. не на всех хостингах выключены короткие теги, которые мешают вывести xml-заголовок

P.S.
inpost я не про возраст, а про программисткие качества. Извини, что обидел
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.