bayanruby
13.11.2012 - 08:08
Привет всем.
Не подскажете как правильно сделать определенный стиль активным ссылкам?
Сейчас я вот такой ужас делаю, мне кажется так неправильно =/
<?php
$activeUrl = $_SERVER['REQUEST_URI'];
$style = 'class="active"';
?>
<li <?=($activeUrl == '/about') ? $style : null;?>>
<a href="http://timebox.lc">
About
</a>
</li>
<li <?=($activeUrl == '/signup') ? $style : null;?>>
<a href="http://timebox.lc/signup">
Sign up
</a>
</li>
T1grOK
13.11.2012 - 10:09
Норм.
Но я бы сделал через массив
$menu = array(
array(
'key' => '/signup'
'url' => 'http......'
'title' => 'Sign up'
)
)
<? foreach($menu as $item):?>
<li <?=($activeUrl == $item['key']) ? $style : null;?>>
<a href="<?=$item['url'];?>">
<?=$item['title'];?>
</a>
</li>
<? endforeach;?>
_____________
Mysql, Postgresql, Redis, Memcached, Unit Testing, CI, Kohana, Yii, Phalcon, Zend Framework, Joomla, Open Cart, Ymaps, VK Api
Игорь_Vasinsky
13.11.2012 - 11:14
скобки в выражениях тернарного оператора - это признак хорошего тона.
тут одно уровневый тернарный оператор - а прикинь их 3,4 и более - визуально запутаться можно будет, а скобки - подсказывают
_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
johniek_comp
13.11.2012 - 11:45
я знаю, здесь то 1, вот я и сказал
_____________
Игорь_Vasinsky
13.11.2012 - 11:58
лучше сразу за привычку брать
_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
killer8080
13.11.2012 - 12:30
Цитата (Игорь_Vasinsky @ 13.11.2012 - 10:14) |
тут одно уровневый тернарный оператор - а прикинь их 3,4 и более - визуально запутаться можно будет, а скобки - подсказывают |
Если составной тернарный оператор, то скобки уже нужны не для красоты, без них работать не будет как надо (в php).