我在门户网站页面中使用数据属性来描述最喜欢的链接。使用常规列表非常容易实现(因为您可以单独将自定义的“数据特殊”放入其中。
但是,如果您在阵列中有大量链接并且正在使用foreach
data-special是我自己的声明。我通过CSS将Unicode字符应用于特殊的链接。
感谢您的阅读和时间。
$portal = array(
"Twitter" => "http://twitter.com",
//another 20 array elements
);
ksort($portal);
foreach ($portal as $key => $item):
echo("<li><a rel=\"external\" href=\"$item\">$key</a></li>");
?>
<?php endforeach; ?>
我需要为特定链接添加特殊数据,但不确定如何将它们添加到数组中
EDIT 这就是我试图在数组
中的一些链接中实现的5个<li data-special><a href="http://kuler.adobe.com/#create/fromacolor" rel="external">Kular</a></li>
答案 0 :(得分:1)
不知道更多,尝试这样的事情(填写需要的空白)。我假设您使用的是UTF-8内容类型
<?php foreach ($portal as $key => $item) :
$special = /* boolean statement; is $key or $item special */
? 'data-special="true"' : '';
?>
<li <?php echo $special ?>>
<a rel="external"
href="<?php echo htmlspecialchars($item, ENT_QUOTES, 'UTF-8') ?>">
<?php echo htmlspecialchars($key, ENT_QUOTES, 'UTF-8') ?>
</a>
</li>
<?php endforeach ?>
一个更具体的例子可能是,如果您只想将 Twitter 键设置为特殊..
$special = $key == 'Twitter'
? 'data-special="true"' : '';
或许更好的例子可能是......
// before the foreach loop
$specials = array('Twitter', 'Google', 'Facebook');
然后,在你的循环中
$special = in_array($key, $specials)
? 'data-special="true"' : '';