Heim > Backend-Entwicklung > PHP-Tutorial > web后端 - 关于php中嵌入html代码时结束符“?>”位置为什么这样放置?

web后端 - 关于php中嵌入html代码时结束符“?>”位置为什么这样放置?

WBOY
Freigeben: 2016-06-06 20:27:00
Original
1687 Leute haben es durchsucht

大家好,本人初学php,关于html和php代码嵌入有点不明白,

举个例子:

<code><?php if ( $missingFields ) { ?>
<p class="”error”">There were some problems with the form you submitted.
Please complete the fields highlighted below and click Send Details to resend the form.</p>
<?php } else { ?>
<p>Thanks for choosing to join The Widget Club. To register, please fill
in your details below and click Send Details. Fields marked with an asterisk(*) are required.</p>
<?php } ?>
</code>
Nach dem Login kopieren
Nach dem Login kopieren

为什么这里遇到“}”就把它单独放置在<?php ?>中。为什么不能写成这样?

<code><?php if ( $missingFields ) { 
<p class=”error”>There were some problems with the form you submitted.
Please complete the fields highlighted below and click Send Details to resend the form.
 } else { 
<p>Thanks for choosing to join The Widget Club. To register, please fill
in your details below and click Send Details. Fields marked with an asterisk(*) are required.</p>
 } </code>
Nach dem Login kopieren
Nach dem Login kopieren

非常感谢,解疑答惑!

回复内容:

大家好,本人初学php,关于html和php代码嵌入有点不明白,

举个例子:

<code><?php if ( $missingFields ) { ?>
<p class="”error”">There were some problems with the form you submitted.
Please complete the fields highlighted below and click Send Details to resend the form.</p>
<?php } else { ?>
<p>Thanks for choosing to join The Widget Club. To register, please fill
in your details below and click Send Details. Fields marked with an asterisk(*) are required.</p>
<?php } ?>
</code>
Nach dem Login kopieren
Nach dem Login kopieren

为什么这里遇到“}”就把它单独放置在<?php ?>中。为什么不能写成这样?

<code><?php if ( $missingFields ) { 
<p class=”error”>There were some problems with the form you submitted.
Please complete the fields highlighted below and click Send Details to resend the form.
 } else { 
<p>Thanks for choosing to join The Widget Club. To register, please fill
in your details below and click Send Details. Fields marked with an asterisk(*) are required.</p>
 } </code>
Nach dem Login kopieren
Nach dem Login kopieren

非常感谢,解疑答惑!

因为

标签属于html而不是php语言,所以不能加到php起止符号内


表示他为php的 代码块结束符号“}”

因为

<code><p class="”error”">There were some problems with the form you submitted.
Please complete the fields highlighted below and click Send Details to resend the form.</p>
</code>
Nach dem Login kopieren

不是合法的PHP代码.

  1. 在<?php ?>中的是php代码,第二种写法,很明显标签<p></p>中的内容不是php代码。

  2. 如果想要用第二种写法,可以这样写:

<code><?php if ( $missingFields ) { 
echo '<p> ... ';
 } else { 
echo '<p> ... </p>';
 } 
?></code>
Nach dem Login kopieren

所有的非html代码都要嵌入在<?php ?>内,而所有在<?php ?>里面的都会被解析为php代码,按照你的想法,那一对<p></p>标签里的内容不属于php代码,所以应该是这样分段嵌入的:

<code><?php if ( $missingFields ) { ?>
xxx
<?php } else { ?>
xxx
<?php } ?></code>
Nach dem Login kopieren

7048
其实应该这样理解
在php里, ?> 表示开始输出html,

可以这样:

<code><?php if ( $missingFields ): ?>
    <p class="error">There were some problems with the ....</p>
<?php else: ?>
    <p>Thanks for choosing to join The Widget Club....</p>
<?php endif; ?></code>
Nach dem Login kopieren

语言PHP的语法起始标签就是 <?php ?> PHP的语言决定必须这么写!!!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage