简单if语句不工作[嵌套php标签]

时间:2013-06-20 17:57:52

标签: php magento if-statement syntax

下面的代码我试图说,如果该块等于或小于1000px高度显示徽标,否则发短信文本。我无法弄清楚我做错了什么。请记住这是在magento里面有一个更好的方法来写这个我认为jquery对吗?

 <?php if (css class >= height of 62px): 
 echo '<h1 class="logo"><strong><?php echo $this->getLogoAlt() ?></strong>
 <a href="<?php echo $this->getUrl('') ?>" title="<?php echo $this->getLogoAlt() ?>" class="logo"><img src="<?php echo $this->getLogoSrc() ?>" <?php echo MAGE::helper('ThemeOptions/Retina')->getRetinaData('logo'); ?> alt="<?php echo $this->getLogoAlt() ?>" /></a></h1>';
         else: echo '<p> Testing </p>'; 
         endif; ?>

1 个答案:

答案 0 :(得分:1)

非常直截了当的评论。学会看代码,它有结构。它根据使用地点以特定方式配制。

嵌套的PHP标记不起作用

<?php if :
  <?php ... ?>
?>

对于php代码占主导地位并且html作为echo语句生成的php脚本,这就是结构:

<?php

if (css class >= height of 62px) {
    echo '<h1 class="logo"><strong>' . $this->getLogoAlt() . '</strong>';
    echo '<a href="' . $this->getUrl('') . '" title="' . $this->getLogoAlt() . '" class="logo">';
    echo '<img src="' . $this->getLogoSrc() . '" ' . MAGE::helper('ThemeOptions/Retina')->getRetinaData('logo') . '" alt="' . $this->getLogoAlt() . '" />';
    echo '</a></h1>';
} else {
    echo '<p> Testing </p>'; 
}

?>

对于html脚本,其中html标签占主导地位且PHP代码作为标签包含在html中,这就是结构:

<?php if (css class >= height of 62px): ?>
   <h1 class="logo"><strong><?php echo $this->getLogoAlt() ?></strong>
   <a href="<?php echo $this->getUrl('') ?>" title="<?php echo $this->getLogoAlt() ?>" class="logo"><img src="<?php echo $this->getLogoSrc() ?>" 
   <?php echo MAGE::helper('ThemeOptions/Retina')->getRetinaData('logo') ?> alt="<?php echo $this->getLogoAlt() ?>" /></a></h1>
<?php else: ?>
   <p> Testing </p> 
<?php endif; ?>

注意:那个if测试以及此代码中的其他一些东西使它成为伪代码,可能实际上并不可用Magento php。需要做更多的工作。