Чаму асобныя PHP ад HTML ў кодзе як мага больш?

Двойчы цяпер, калі я спытаў і адказаў, што я павінен аддзяліць PHP ад HTML у коды як мага больш. Замест таго, каб выкарыстоўваць:

<?php
echo "
The value of x is $valuex greater.

"; ?>

Што я павінен выкарыстоўваць:


The value of x is <?php echo $valuex; ?> greater.

Ці ёсць нейкая розніца, я павінен ведаць, акрамя фармату?

0
Так што дызайнеры і праграмісты могуць працаваць над адным праектам. Акрамя таго, яна дазваляе наладзіць «глядзець», не рызыкуючы парушыць PHP код.
дададзена аўтар Ha11owed, крыніца

7 адказы

Адна з унікальных рэчаў аб PHP з'яўляецца тое, што яна служыць мэты як на боку сервера мова і мова шаблоннага. У ідэале, ваш код будзе падзелены на кантролеры і прадстаўленне, дзе вашыя кантралёры чысты PHP (без HTML) і вашы погляды у асноўным HTML (з мінімальнай PHP). Калі вы пішаце кантролер, PHP, як і любы іншы баку сервера мову. Але калі вы пішаце ўяўленне, PHP становіцца мовай шаблонаў, у гэтым выпадку HTML павінен кіраваць.

Яшчэ адна добрая прычына, каб аддзяліць два з'яўляецца <�моцны> падсвятленне сінтаксісу . У першым прыкладзе, большасць рэдактараў не зразумелі б, што тэкст у радку на самай справе HTML, таму яны не будуць ведаць, каб прымяніць падсвятленне сінтаксісу. Гэта азначае, што ваш код, верагодна, будзе цяжэй чытаць, чым гэта магло быць, што робіць жыццё цяжкай для наступных распрацоўшчыкаў.

1
дададзена

Вам трэба рэха у другі,


The value of x is <?php echo $valuex; ?> greater.

Ці проста,


The value of x is <?=$valuex ?> greater.

Read: What's the best way to separate PHP Code and HTML?. Also read Escaping From HTML.

1
дададзена
ад таго, калі вы использованияКонтактная PHP 5.2+, вы можаце выкарыстоўваць <? = $ valuex?> абазначэння.
дададзена аўтар Orangepill, крыніца
Я думаю, вы павінны больш клопату пра дыскрэтнасцю і фарматаванне , а не хуткасць.
дададзена аўтар Rikesh, крыніца
Прабачце. Я проста забыўся рэха ... Любыя іншыя адрозненні? як загрузка хуткасць хутчэй, таму што менш працэс або што-то?
дададзена аўтар J.A.W.S. Ibañez II, крыніца
Спасылка Размешчанае Вамі вялікі ...
дададзена аўтар J.A.W.S. Ibañez II, крыніца

Розніца заключаецца ў тым:

<?php $valuex = 6; ?>


The value of x is <?php echo $valuex; ?> greater.

Тут вам трэба паўтарыць толькі PHP зменнай часткі.

<?php
echo "
The value of x is $valuex greater.

"; ?>

Тут вам трэба паўтарыць усю частку.

1
дададзена
Час загрузкі для першага амаль 0,0395700931549 сек і другі амаль 5,29289245605 Е-5 сек
дададзена аўтар Vijaya Pandey, крыніца
@ J.A.W.S.IbañezII Вы можаце галасаваць, калі гэта было сапраўды карысна .. :)
дададзена аўтар Vijaya Pandey, крыніца
Так што гэта проста фармат? Няма «загрузка не адбываецца хутчэй, калі вы падзеліце» або што-то?
дададзена аўтар J.A.W.S. Ibañez II, крыніца
Гэта было карысна ...
дададзена аўтар J.A.W.S. Ibañez II, крыніца

Гэта значна лягчэй падтрымліваць код, як HTML і PHP, адлучаючы іх.

0
дададзена

На першым змяніць сінтаксіс, як

<?php
   echo "
The value of x is ".$valuex." greater.

"; ?>

а ў другім адно змены, каб паўтарыць значэнне, як


The value of x is <?php echo $valuex; ?> greater.

Але абодва абазначэння такія ж, і працаваць так жа

0
дададзена

Выснова будзе аднолькавым у абодвух выпадках.

Першы прыклад PHP Выснова HTML-код Другі прыклад HTML-код з PHP ўнутры яго Прыклад «Ideal» заключаецца ў наступным:


The value of x is <?=$valuex?> greater.

0
дададзена

The reason for this is that frankly you'll want to always be as flexible as possible. However, mixing your PHP with html means that your php-core is mixed up with your template, thus you'll have an a lot harder time maintaining, altering & providing different templates/languages etc. Thus always keep it apart.

0
дададзена