html의 php 변수는 다음과 같습니다.
저는 HTML과 PHP를 혼합하여 작업합니다.대부분의 경우 몇 개의 PHP 변수가 포함된 솔리드 HTML을 원하기 때문에 코드는 다음과 같습니다.
<tr><td> <input type="hidden" name="type" value="<?php echo $var; ?>" ></td></tr>
꽤 못생겼죠좀 더 짧게, 더 짧게, 다음과 같은 것은 없습니까?
<tr><td> <input type="hidden" name="type" value="$$var" ></td></tr>
이것은 가능하지만, 당신은 그 안에 갇히게 됩니다.""
(모두 교환할 필요가 있습니다).''
레이아웃이 없어졌습니다.
echo "<tr><td> <input type="hidden" name="type" value="$var" ></td></tr>"
더 좋은 건 없나요?
코드에는 짧은 태그 버전이 있으며, 오래된 권장 사항에도 불구하고 현재 완전히 사용할 수 있습니다.
<input type="hidden" name="type" value="<?= $var ?>" >
PHP 5.4 이전 버전에서는 php 구성에서 짧은 태그를 활성화해야 합니다.입력한 코드와 동일하게 기능합니다.다음 행은 내부 구현과 동일합니다.
<?= $var1, $var2 ?>
<?php echo $var1, $var2 ?>
이것이 빌트인 솔루션입니다.출력에 데이터를 쉽게 삽입할 수 있는 서드파티 템플릿 라이브러리가 많이 있습니다.Smarty를 도입하는 것이 좋습니다.
GREEDOC 구문을 사용합니다.단일 따옴표와 이중 따옴표, 변수 및 함수 호출을 변경하지 않고 에스케이프하지 않은 HTML 마크업으로 혼재시킬 수 있습니다.
echo <<<MYTAG
<tr><td> <input type="hidden" name="type" value="$var1" ></td></tr>
<tr><td> <input type="hidden" name="type" value="$var2" ></td></tr>
<tr><td> <input type="hidden" name="type" value="$var3" ></td></tr>
<tr><td> <input type="hidden" name="type" value="$var4" ></td></tr>
MYTAG;
Smarty 템플릿엔진을 프로젝트에 표준 php lib로 채택해야 한다고 생각합니다.
Name: {$name|capitalize}<br>
쇼트 태그를 사용하지 않는 것이 좋습니다.PHP 쇼트 태그를 사용할 수 있습니까?를 참조해 주십시오.자세한 것은, 을 참조해 주세요.
개인적으로 HTML과 PHP를 이렇게 섞어도 상관없습니다.
<a href="<?php echo $link;?>">link description</a>
구문 하이라이팅이 좋은 코드 에디터가 있으면 읽을 수 있을 것 같습니다.HTML을 PHP로 에코하기 시작하면 HTML을 강조 표시하는 구문의 장점을 모두 잃게 됩니다.HTML 에코의 또 다른 단점은 따옴표가 있는 것이므로 IMHO의 판독성이 훨씬 떨어집니다.
echo '<a href="'.$link.'">link description</a>';
간단한 에코와 간단한 루프를 PHP로 하고 나머지는 HTML로 하는 것의 가장 큰 장점은 들여쓰기가 일관된다는 것입니다.그것은 결국 가독성/스캔성을 향상시킵니다.
보기용으로 보다 콤팩트한 구문을 제공하는 템플릿 시스템이 많이 있습니다.스마티는 존경스럽고 인기가 있다.이 문서에는 기타 10개의 목록이 있습니다.
HTML 섹션 앞의 php 섹션에서 sprinf()를 사용하여 변수에서 상수 문자열을 만듭니다.
$mystuff = sprinf("My name is %s and my mother's name is %s","Suzy","Caroline");
그런 다음 HTML 섹션에서 다음과 같은 원하는 작업을 수행할 수 있습니다.
<p>$mystuff</p>
Smarty와 같은 템플릿 엔진을 사용하려고 했는데, 제 사용 사례는 매우 기본적이기 때문에 이 클래스를 만들었습니다.도움이 되었으면 합니다.
class HtmlRender
{
public function __construct($template, array $data)
{
$this->template = $template;
$this->data = $data;
}
private static function fileGetContentsUFT8($file)
{
$content = file_get_contents($file);
return mb_convert_encoding($content, "HTML-ENTITIES", "UTF-8");
}
public function render()
{
$template = self::fileGetContentsUFT8($this->template);
foreach ($this->data as $key => $value) {
$template = str_replace('{{ ' . $key . ' }}', $value, $template);
}
return $template;
}
}
사용법은 다음과 같습니다.
$renderer = new HtmlRender(
__DIR__ . '/templates/account.create.html',
[
'name' => $clientName,
'email' => $clientEmail
]
);
$body = $renderer->render();
또한 Html 내부에서는 다음 구문을 사용합니다.
<p>Your name is: <span> {{ name }} </span></p>
<p>Your email is: <span> {{ email }} </span></p>
언급URL : https://stackoverflow.com/questions/2150238/php-variable-in-html-no-other-way-than-php-echo-var
'source' 카테고리의 다른 글
MySQL InnoDB의 테이블로 바꾸기 속도가 매우 느립니다. (0) | 2023.01.19 |
---|---|
j선택에서 옵션 제거 쿼리 (0) | 2023.01.19 |
휴지 상태 - 배치 업데이트에서 업데이트에서 예기치 않은 행 수가 반환되었습니다: 0 실제 행 수: 0 예상: 1 (0) | 2023.01.19 |
twig: 여러 조건이 있는 경우 (0) | 2023.01.15 |
Java 8에서의 스플리터, 수집기 및 스트림에 대해서 (0) | 2023.01.15 |