вам нужна ваша помощь. Так как название предлагает, я пытаюсь изменить классы css с помощью переменной PHP. Поэтому в основном я хочу создать цикл, который эхо кода. Но я хочу, чтобы класс div в первом цикле был другим – он должен быть скрыт.
Вот упрощенный код, который я сделал, чтобы сделать проблему понятной. Я не знаю, где ошибки. Пожалуйста, порекомендуйте.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Untitled Document</title> <style> .hidden { visibility:hidden; } .visible { visibility:visible; } .firstclass { color:red; } </style> </head> <body> <?php $case = 4; $page = ""; $class = ""; if ($page == 0) { $class = "hidden"; } else { $class = "visible"; } for ($page = 0; $page < $case; $page++) { echo "<div class = " firstclass $class " >This is page $page <br /></div>"; } ?> </body> </html>
Вам нужно поставить условие if в цикл
<?php for ( $page = 0; $page < $case; $page++ ) { if ($page == 0) $class = "hidden"; else $class = "visible"; echo "<div class='firstclass $class'>This is page $page <br /></div>"; } ?>
Поскольку существует условие, когда $ page == 0, то он даст скрытый класс, поэтому, если вы просто поместите его за пределы цикла, тогда $ page никогда не получит значение int, потому что в верхней части условия есть $ page знак равно
for ( $page = 0; $page < $case; $page++ ) { $class = ($page == 0) ? 'hidden' : 'visible' ; echo '<div class="firstclass"'. $class.'">This is page' .$page. '<br /></div>'; }
echo "<div class=\"firstclass $class\">This is page $page <br /></div>";
это еще один вариант
Попробуй это:
for ($page = 0; $page < $case; $page++) { echo ("<div class=\"" . $class . " firstclass\">This is page $page <br /></div>"); }