PHP Color самая низкая цена в таблице

Я пытаюсь вставить 7 ценовых значений в таблицу и закрасить самую низкую цену. Я не знаю где разместить $lowestprice, Я знаю, что это плохой код, но он работал, пока я не попытался добавить цвет.

for ($i = 1; $i <= 7; $i++){
${"price".$i} = preg_replace($regexp, $match, ${"rawprice".$i});
if (preg_match('/'.$article.'/i', ${"stock".$i}))
{
$list[$i] =  ${"price".$i};
$lowestprice = min($list);
if (preg_match('/^'.$lowestprice.'/i', ${"price".$i}))
{
echo ${"url".$i}." class=\"lowestprice\">".${"price".$i}." €</a></td>"; // lowest price in color with css
}
else
{
echo ${"url".$i}." class=\"price\">".${"price".$i}." €</a></td>";
}
}
else
{
echo "<td>Out of stock</td>";
}
}

-2

Решение

Прежде всего, не используйте ${"string".$i} Переменные типа. Хорошо, что это работает, конечно, но если вы работаете с данными, которые, кажется, следуют структуре массива, просто используйте массив. Меньше беспорядка, меньше драмы, все счастливы.

$ rawprice должен быть массивом, содержащим 7 целых чисел с 7 ценами в центах. Тогда вы бы сделали что-то вроде этого:

$lowestPrice = min( $rawPrice );

for( $i = 0; $i <= 6; $i++ ) {
if( inStock( $article[$i] ) ) {
$price = str_replace( ".", ",", (string) ($rawPrice[$i] / 100 ) );

if( $rawPrice[$i] == $lowestPrice ) {
$class = "lowestprice";
} else {
$class = "price";
}

echo "<td><a href=\"{$url[$i]}\" class=\"{$class}\">{$price} €</a></td>";
} else {
echo "<td>Out of stock</td>";
}
}
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]