在PHP中使用echo中的if else条件

时间:2016-01-04 09:53:21

标签: php

如果我试图简单地将它放在echo中,它会引发一些错误。

echo的php代码是:

echo "
<td height='280' width='240' align='center'>
  <img src='Product/$i' ] ' height='200 ' width='200 '><br/>
	
	<b>Item Name:</b>".$data['product_name '].
   "<br><b>Price:</b>Rs&nbsp;".$data['product_price '].
   "<br><b>Description:</b>".$data['product_description '].
   "<br><a href=#><img src='images/buy4.jpg ' width='100 ' height='50 '/></a>.
   
   </td>";

我想在其中加入以下条件:

if(isset($_GET['Currency']))
	{
	$Currency =  $_GET['currency'];// user selected currency
	if($Currency!="GBP")
	{
		if($Currency=="USD"){echo "$";}
		
	echo convertCurrency($pound_price, "GBP", $Currency);
	if($Currency=="EUR"){echo "&#8364";}
	
	}
	else {echo "&pound". $pound_price;}
	
	
	}
	else
	{
		echo "&pound". $pound_price;
		
	}

我该怎么办?

1 个答案:

答案 0 :(得分:0)

您可以在输出最终结果之前处理变量。

首先检索获取货币变量(如果可用)

$currency = isset($_GET['currency']) ? (string) $_GET['currency'] : '';

然后你可以有一个函数,为你提供有关货币和价格的格式化输出:

function getFormattedPrice($currency, $price)
{
    $formattedPrice = '';
    switch($currency) {
        case 'USD' :
            $formattedPrice = $price . '$';
            break;
        case 'EUR' :
            $formattedPrice = $price . '&#8364';
            break;
        default :
            $formattedPrice = '&pound' . $price;
            break;
    }

    return $formattedPrice;
}

然后您可以使用此行获取格式化的价格

$formattedPrice = getFormattedPrice($currency, $pound_price);

使用格式化的值回显您的文本。或者像你一样在你的回声中调用函数:

echo "<br>" . getFormattedPrice($currency, $data['product_price ']);