php如果回显别的东西回应其他的html

时间:2014-03-15 11:41:52

标签: php html

所以这里是我的代码,我尝试让我的分页功能在主页上回显一些内容,如果在页面= 2或页面3 ++等其他页面上则回显其他内容

<?php if(empty($_GET) or ($_GET['pg']==1)) { echo ' ?> Html codes content and php <?php '; } else { echo '?> Else html codes content and php <?php '; } ?>

但是不起作用,我确定是来自&#34; &#39; &#34;或&#34; &#39;&#39; &#34;我错了但在哪里?问题在哪里或什么

4 个答案:

答案 0 :(得分:2)

不要将?>放在echo声明中。

<?php 
if(empty($_GET) || $_GET['pg'] ==1) {
    echo 'HTML codes content';
} else {
    echo 'Else html codes content';
}
?>

你也可以通过使用echo关闭PHP和而不是来实现:

<?php
if (empty($_GET) || $_GET['pg'] ==1) { ?>
    HTML codes content
<?php else { ?>
    Else html codes content
<?php } ?>

答案 1 :(得分:1)

您可以使用ternary operator使其更简单。另外最好使用isset(),因为即使$ _GET不为空,也不意味着$ _GET ['pg']存在,因此会产生警告。

无论如何如上所述,问题是您在echo语句中使用了?>,这是不正确的。

你可以这样做:

<?php if ((isset($_GET['pg'])) && ($_GET['pg']==1)) { ?>Html codes content and php<?php } else { ?>Else html codes content and php<?php } ?>

使用三元运算符:

<?php echo ((isset($_GET['pg'])) && ($_GET['pg']==1)) ? 'Html codes content and php' : 'Else html codes content and php'; ?>

使用三元运算符和短标记:

<?=((isset($_GET['pg'])) && ($_GET['pg']==1)) ? 'Html codes content and php' : 'Else html codes content and php'; ?>

答案 2 :(得分:0)

你不能在echo中拥有PHP代码,因为PHP会在一次通过中解释你的代码。

您的代码应该是这样的:

<?php 
    echo (empty($_GET) || ($_GET['pg']==1)) ? 
         'Html code':
         'Another HTML code';
?>

如果你需要输出一些PHP代码,总会有更好的方法来实现它,你可以包含一些包含你要添加的php代码的文件。

答案 3 :(得分:0)

你可以用这种方式。

<?php if(empty($_GET) || $_GET['pg'] ==1): ?>
    <p>HTML codes content</p> 
<?php else: ?>
    <p>Else html codes content<p>
<?php endif; ?>

请注意:我使用了直接的html代码。