Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/279.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在html标签之间使用php?_Php_Html - Fatal编程技术网

如何在html标签之间使用php?

如何在html标签之间使用php?,php,html,Php,Html,我知道,而且刚刚检查过,这个问题有很多答案。但我觉得我必须用我的具体例子问问自己。下面是一个例子: <?php if($i==1){?><div class=yel><?php echo "Today at $hour:$min $ampm<br/> Event: $event<br/> Place: $place<br/> Description: $desp<br/> Contact info: $info";?&

我知道,而且刚刚检查过,这个问题有很多答案。但我觉得我必须用我的具体例子问问自己。下面是一个例子:

<?php if($i==1){?><div class=yel><?php echo "Today at $hour:$min $ampm<br/> Event: $event<br/> Place: $place<br/> Description: $desp<br/> Contact info: $info";?></div><?php } ?>
它在我的电脑上运行,但当我在其他电脑上尝试这段代码时,它得到了错误解析,语法。相信我,我试过几台电脑。但没有结果。同样的代码在我的电脑上运行良好

所以最后我决定我的代码一点也不整洁。因此,我的代码可能有一些我没有注意到的错误。您可以看到我一次又一次地启动和结束PHP块。你很清楚我为什么这么做。实际上,我试图避免php块中的标记。所以我的问题是,有没有更有效的方法在PHP块中使用DIV标记或任何其他标记?提前感谢。

使用if和endif:

<?php if($i==1): ?>
<div class=yel>
<?php 
echo "Today at $hour:$min $ampm<br/> Event: $event<br/> Place: $place<br/> Description: $desp<br/> Contact info: $info";
?>
</div>
<?php endif; ?>

虽然就我个人而言,我会用马克西姆的答案

用冒号代替括号。也可以使用endif将其关闭

您还可以使用需要通过php.ini启用的短标记,以使事情更干净

<? if($i == 1): ?>
    <div class=yel>
        <?="Today at $hour:$min $ampm<br/> Event: $event<br/> Place: $place<br/> Description: $desp<br/> Contact info: $info"?>
    </div>
<? endif; ?>

这不是更容易用肉眼理解吗

<?php 

if($i==1){
    echo "<div class=yel>";
    echo "Today at $hour:$min $ampm<br/> Event: $event<br/> Place: $place<br/> Description: $desp<br/> Contact info: $info";
    echo "</div>";
}


?>

我可能会选择一个heredoc:

if($i == 1) echo <<< HTML
    <div class="yel">
        Today at {$hour}:{$min} {$ampm}<br/>
        Event: {$event}<br/>
        Place: {$place}<br/>
        Description: {$desp}<br/>
        Contact info: {$info}
    </div>
HTML;

当你有一把包含几个变量的HTML时,heredocs就是为它而设计的。又漂亮又干净。

是的。所以我不需要一次又一次地开始和结束php块。您只使用了一个php块,还将div标记放入了echo中。我不知道div标签在echo中起作用。非常感谢。我注意到你用了“=”而不是echo。所以这对我来说是另一件新鲜事。非常感谢。我也是。谢谢克里斯托弗。
if($i == 1) echo <<< HTML
    <div class="yel">
        Today at {$hour}:{$min} {$ampm}<br/>
        Event: {$event}<br/>
        Place: {$place}<br/>
        Description: {$desp}<br/>
        Contact info: {$info}
    </div>
HTML;