В зависимости от того, если у вас есть один или несколько состояний вы могли бы пойти с использованием либо if() {} else {}
конструкции, использовать array()
для работы или Оператор switch
может также использоваться, если у вас есть несколько состояний, требующих вывода того же класса.
, например, с использованием массива:
$classes = array(
'sold' => 'date-two',
'...' => '...' //example values
);
// imagining that $data_available = 'SOLD'
echo '<span class="'. ($classes[strtolower($data_available)] || 'date') .'">';
или с помощью переключателя заявление
$cls = 'date';
switch (strtolower($data_available)) {
case 'sold':
case 'sold2': // switch statements allow multiple 'cases' to be grouped for the same output.
$cls = 'date-two';
break;
case '...':
$cls = '...';
break;
default:
$cls = 'date';
break;
}
для примера, если я смотрю на Tobias' ответ
Другой вариант вместо использования другой класс, просто знаю, что может выводить база данных и создавать для этого префиксные классы.
например.sold
, bought
и negotiating
некоторые государства (пример)
Что вы можете сделать здесь просто
$cls = 'date-' . strtolower($data_available); // if $data_available is sold it will output date-sold
echo '<span class=". $cls .">';
то в вашем CSS вы могли бы сделать что-то вроде:
.date-sold {
width: 420px;
background: green;
}
.date-bought {
width: 720px;
background: white;
}
.date-negotiating {
width: 30px;
background: transparent;
}
Таким образом, вы» всегда будет безопасным, и если ваш вход в базу данных будет согласован, то это будет то, что все ваши divs получат правильный класс с правильным CSS, применяемым без излишней перегрузки PHP.
Удачи вам!
отлично работает, спасибо! –