базовая справка по форме PHP (отображение валюты)
Вопрос
Ребята, вы очень помогли вчера.Хотя я все еще немного запутался.
Я хочу сделать так, чтобы числа в крайнем правом столбце округлялись до ближайшего доллара:
http://www.nextadvisor.com/voip_services/voip_calculator.php?monthlybill=50&Submit=Отправить
код таблицы выглядит так:
Я хочу, чтобы $offer[1,2,3,4,5,6,7]calcsavingsann была округлена, как это сделать?
<table width="100%;" border="0" cellspacing="0" cellpadding="0"class="credit_table2" >
<tr class="credit_table2_brd">
<td class="credit_table2_brd_lbl" width="100px;">Services:</td>
<td class="credit_table2_brd_lbl" width="120px;">Our Ratings:</td>
<td class="credit_table2_brd_lbl" width="155px;">Monthly VoIP Bill:</td>
<td class="credit_table2_brd_lbl" width="155px;">Annual Savings:</td>
</tr>
<?php
$offer1price="24.99";
$offer2price="20.00";
$offer3price="21.95";
$offer4price="23.95";
$offer5price="19.95";
$offer6price="23.97";
$offer7price="24.99";
$offer1calcsavings= $monthlybill - $offer1price;
$offer2calcsavings= $monthlybill - $offer2price;
$offer3calcsavings= $monthlybill - $offer3price;
$offer4calcsavings= $monthlybill - $offer4price;
$offer5calcsavings= $monthlybill - $offer5price;
$offer6calcsavings= $monthlybill - $offer6price;
$offer7calcsavings= $monthlybill - $offer7price;
$monthybill="monthlybill";
$offer1calcsavingsann= $offer1calcsavings * 12;
$offer2calcsavingsann= $offer2calcsavings * 12;
$offer3calcsavingsann= $offer3calcsavings * 12;
$offer4calcsavingsann= $offer4calcsavings * 12;
$offer5calcsavingsann= $offer5calcsavings * 12;
$offer6calcsavingsann= $offer6calcsavings * 12;
$offer7calcsavingsann= $offer7calcsavings * 12;
$re=1;
$offer ='offer'.$re.'name';
$offername= ${$offer};
while($offername!=""){
$offerlo ='offer'.$re.'logo';
$offerlogo=${$offerlo};
$offerli ='offer'.$re.'link';
$offerlink=${$offerli};
$offeran ='offer'.$re.'anchor';
$offeranchor=${$offeran};
$offerst ='offer'.$re.'star1';
$offerstar=${$offerst};
$offerbot='offer'.$re.'bottomline';
$offerbottomline=${$offerbot};
$offerca ='offer'.$re.'calcsavings';
$offercalcsavings=${$offerca};
$offerpr ='offer'.$re.'price';
$offerprice=${$offerpr};
$offersavann ='offer'.$re.'calcsavingsann';
$offercalcsavingsann=${$offersavann};
echo '<tr >
<td >
<a href="'.$offerlink.'" target="blank"><img src="http://www.nextadvisor.com'.$offerlogo.'" alt="'.$offername.'" />
</a>
</td>
<td ><span class="rating_text">Rating:</span>
<span class="star_rating1">
<img src="http://www.nextadvisor.com'.$offerstar.'" alt="" />
</span>
<br />
<div style="margin-top:5px; color:#0000FF;">
<a href="'.$offerlink.'" target="blank">Go to Site</a>
<span style="margin:0px 7px 0px 7px;">|</span><a href="'.$offeranchor.'">Review</a>
</div> </td>
<td >$'.$offerprice.'</td>
<td >$'.$offercalcsavingsann.'</td>
</tr>';
$re=$re+1;
$offer ='offer'.$re.'name';
$offername= ${$offer};
}
?>
</table>
Другие советы
Grepsedawk ответ хороший; единственное, что я хотел бы добавить, это то, что вместо отображения $ 336,6, например, вы могли бы использовать number_format для вывода $ 336.60 , Р>
(Я знаю, что это был не ваш вопрос, но, посмотрев на ссылку, я подумал, что это может быть полезно для вас.)
Редактировать - спасибо Энди за предложение money_format вместо этого.
money_format()
- это функция, которая возвращает строковое значение отформатированного числа. Вы управляете форматированием и, очевидно, своим номером. Простой пример: если у вас есть значение в переменной $myNumber
, вы можете включить результат в ячейку данных данной таблицы следующим образом;
<?php echo ("<td>".money_format('%n',$myNumber)."</td>"); ?>
И вам нужно будет сделать это для каждого значения, например, через цикл for
, если у вас есть все ваши значения в массиве. n
Вот один из вариантов форматирования - их несколько. Хорошее место для поиска было бы на веб-странице PHP по адресу http: / /au2.php.net/manual/en/function.money-format.php
Надеюсь, это поможет.
Кажется, я не могу понять правильное использование.Я использую echo
echo '<tr >
<td ><a href="'.$offerlink.'" target="blank"><img src="http://www.nextadvisor.com'.$offerlogo.'" alt="'.$offername.'" /></a></td>
<td ><span class="rating_text">Rating:</span><span class="star_rating1"><img src="http://www.nextadvisor.com'.$offerstar.'" alt="" /></span><br />
<div style="margin-top:5px; color:#0000FF;"><a href="'.$offerlink.'" target="blank">Go to Site</a><span style="margin:0px 7px 0px 7px;">|</span><a href="'.$offeranchor.'">Review</a></div> </td>
<td >$'.$offerprice.'</td>
<td >$'.$offercalcsavingsann.'</td>
</tr>';
Я поместил «установить локаль» там, где
"<?php"
является.Я не понимаю, как это написать, и все, что я делаю, просто возвращает ошибку.