За последние 24 часа нас посетили 15595 программистов и 1554 робота. Сейчас ищет 901 программист ...

Смесь php и html

Тема в разделе "PHP для новичков", создана пользователем Evgenij404, 14 май 2014.

  1. Evgenij404

    Evgenij404 Новичок

    С нами с:
    3 янв 2014
    Сообщения:
    20
    Симпатии:
    0
    Здравствуйте! Не давно задумался про смесь php и html. Хотелось бы узнать конкретно вот, что - например, есть php файл(например index.php) в нем есть некий вывод html кода. Скажите есть ли разница как выводить внутри php файла, html, через echo или просто в теле документа отдельно от скрипта писать html, к примеру через
    echo
    Код (Text):
    1.  
    2. <?php
    3. echo "
    4. <html><head>.....
    5. </head>
    6. <body>
    7. <div>......
    8. </div>";
    9. ?>
    или просто написав html
    Код (Text):
    1.  
    2. <?php  ?>
    3. <html>.....
    4. <body>
    5. <div....
    6. </div>
    7. </body>
    8. </html>
    можно ли просто в теле php файла писать html не применяя никаких функций вывода?
     
  2. VLK

    VLK Старожил

    С нами с:
    15 дек 2013
    Сообщения:
    3.010
    Симпатии:
    58
    Второй вариант лучше и не спрашивай почему :)

    Ну в смысле, в зависимости от того, что надо вывести, если "не верный пароль!" то конечно лучше писать echo, а если много тегов, то лучше как во втором примере.
     
  3. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    я юзаю первый вариант
     
  4. dapperkop

    dapperkop Активный пользователь

    С нами с:
    26 сен 2013
    Сообщения:
    890
    Симпатии:
    0
    А я сначала набиваю то что нужно вывести в переменную $response, а потом так: <?php die($response); ?>
     
  5. BaranPHP

    BaranPHP Новичок

    С нами с:
    24 янв 2014
    Сообщения:
    356
    Симпатии:
    0
    Вообще без разницы. Если только PHP совсем мало, тогда конечно, однозначно второй вариант(есть шанс что сайт останется относительно рабочий если пых слетит). Но у меня уже столько PHP кода, что если слетит пых то по любому сайт не жилец. Поэтому пишу и так, и так, в зависимости от того как короче выходит.
    Да и хотел бы добавить )) слетевший пых это так ... чисто пофилософствовать)))
     
  6. Evgenij404

    Evgenij404 Новичок

    С нами с:
    3 янв 2014
    Сообщения:
    20
    Симпатии:
    0
    К примеру есть страница php, в ней много html кода(фактически полноценная html страница), выводиться как написано во втором варианте, где-то в середине вставлен скрипт, и вызывается функция её результаты вставляются в середину страницы, к примеру
    Код (Text):
    1. <php
    2. include...
    3. ?>
    4.  
    5. <html>
    6. ..........
    7. <?php  func();   ?>
    8. .......
    9. </html>
    На сколько это критично ?

    Добавлено спустя 2 минуты:
    Понятно вообщем, всем спасибо, просто никогда не задумывался, писал как во втором варианте, потом задумался, а вдруг так никто не делает :)
     
  7. Your

    Your Старожил

    С нами с:
    2 июл 2011
    Сообщения:
    4.074
    Симпатии:
    7
    Так делают только школьники. Которые вовсе не понимают, что они делают, работает и ладно.
     
  8. dapperkop

    dapperkop Активный пользователь

    С нами с:
    26 сен 2013
    Сообщения:
    890
    Симпатии:
    0
    Нет, я много раз видел - так делают взрослые!
     
  9. VLK

    VLK Старожил

    С нами с:
    15 дек 2013
    Сообщения:
    3.010
    Симпатии:
    58
    в чем преимущество такого делания?
     
  10. dapperkop

    dapperkop Активный пользователь

    С нами с:
    26 сен 2013
    Сообщения:
    890
    Симпатии:
    0
    [​IMG]
     
  11. romach

    romach Старожил

    С нами с:
    26 окт 2013
    Сообщения:
    2.904
    Симпатии:
    719
    Только у меня одного шаблоны в отдельных файлах в папочке view/?
     
  12. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    Я не понимаю, зачем шаблоны выносить. Это неудобно. Код от вывода отделять - это удобно. А где при этом шаблон - дело десятое.
     
  13. dapperkop

    dapperkop Активный пользователь

    С нами с:
    26 сен 2013
    Сообщения:
    890
    Симпатии:
    0
    Ноуп... У меня в папочке views/
     
  14. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.771
    Адрес:
    :сердА
    Не надо изобретать буфер вывода. Он уже существует. Куда более удобный, гибкий, и заголовки умеет обрабатывать.
     
  15. AndyTitan

    AndyTitan Активный пользователь

    С нами с:
    30 июн 2013
    Сообщения:
    301
    Симпатии:
    0
    Адрес:
    Saturn’s moon Titan
    Если выводить хэтэмэле то как по мне удобней всего хрефдоком
    Код (PHP):
    1. while($row = mysqli_fetch_assoc($res)){
    2.     $id = $row['id'];
    3.     $name = $row['name'];
    4.     $email = $row['email'];
    5.     $dt = date('d-m-Y H:i:s', $row['dt']);
    6.     $msg = nl2br($row['msg']);
    7.     echo <<<HTML
    8.     <hr>
    9.     [url="mailto:{$email}"]{$name}[/url]@{$dt}<br>
    10.     
    11.     {$msg}
    12.     <p align='right'>
    13.     [url="{$_SERVER['REQUEST_URI']}&del={$id}"]Удалить[/url]
    14. HTML;
    15. }
    что-то типо...
    переменные не обязательно экранировать,но как говориться безопастности много не бывает :) да и читабельность адекватная
     
  16. romach

    romach Старожил

    С нами с:
    26 окт 2013
    Сообщения:
    2.904
    Симпатии:
    719
    Не надо ничего выводить в коде, уже давно придумали для этого шаблоны.