2015-04-07 40 views
0

所以我有这样的代码应该在一个案例显示价格和“付费”的文字在其他:如何呼应内部开关的情况下PHP代码

<?php 
switch($order['status']) 
{ 
    case 0: 
     echo 
     '<div class="paiment"> 
       <p>Some text</p> 
       <ul> 
        <li>More text</li> 
        <li>More text</li> 
        <li>Important text: 
         <?php foreach($something as $item): ?> 
          <?php 
          $unitPrice = HelperItem::displayItemPrice($item["price"], true, $configuration); 
          ?>    
          <?php echo $unitPrice; ?> 
         <?php endforeach; ?> 
        </li> 
       </ul> 
     </div>' 
     ; 
     break; 
    case 1: 
     echo 'Paid'; 
     break; 
} 
?> 

我需要一些方法来使这里面“的foreach”工作“回声”。我已经尝试删除“”并执行如下操作:echo'xxxx'。代码。 'xxxx',但我得到的只是错误。是否有可能做到这一点?

+2

是否有某些原因需要使用开关?这似乎很奇怪,特别是如果你只有2例。 – ixchi

+0

这是来自jooma组件的代码的一部分,并且还有更多的情况,我只是简化了这个问题的代码 – Danijel

回答

0

你很近,只需要突破的东西了foreach各地:

<?php 
switch($order['status']) 
{ 
    case 0: 
     echo 
     '<div class="paiment"> 
       <p>Some text</p> 
       <ul> 
        <li>More text</li> 
        <li>More text</li> 
        <li>Important text:'; 
         foreach($something as $item) 
          echo HelperItem::displayItemPrice($item["price"], true, $configuration); 
        echo '</li> 
       </ul> 
     </div>' 
     ; 
     break; 
    case 1: 
     echo 'Paid'; 
     break; 
} 
?> 
+0

换句话说,让PHP,而不是HTML作为_primary_语言。从来没有(除了在开始时)说'<?php'。 –

0

你可以不回一个foreach。也许尝试类似:

echo "xxxx"; 
foreach(){ } 
echo "xxxx";