hahacc 发表于 2009-9-14 09:45:34

CodeIgniter中引用某一个表情(smiley)

如果我们需要把smiley中的一个表情显示出来,不需要写上具体的image url的,直接用smiley helper中的一个函数:parse_smileys()
if ( ! function_exists('parse_smileys'))
{
function parse_smileys($str = '', $image_url = '', $smileys = NULL)
{
if ($image_url == '')
{
   return $str;
}
if ( ! is_array($smileys))
{
   if (FALSE === ($smileys = _get_smiley_array()))
   {
    return $str;
   }
}
// Add a trailing slash to the file path if needed
$image_url = preg_replace("/(.+?)\/*$/", "\\1/",$image_url);
foreach ($smileys as $key => $val)
{
   $str = str_replace($key, "<img src=\"".$image_url.$smileys[$key]."\" width=\"".$smileys[$key]."\" height=\"".$smileys[$key]."\" alt=\"".$smileys[$key]."\" style=\"border:0;\" />", $str);
}
return $str;
}
}

了解了上面的函数,具体实施如下:
首先,在Controller中:
$this->load->helper('smiley');
$data['smiley_grin']=parse_smileys(':-)',base_url().'images/smileys');
$this->load->view('index',$data);

然后在View中:
<?=$smiley_grin;?>

OK!
怎么样,看到效果了吧!
其实呢,只要在config/smileys.php中配置好表情,还有很多的表情你可以自定义进行引用的。
所以,经常分析源码,有不一样的发现哦!!:victory:

hahacc 发表于 2009-9-14 16:45:24

嗯,Thank you!

kazaff 发表于 2009-9-14 22:09:50

占位,有空看!

√←忆 发表于 2011-7-20 15:39:33

顶一个 真找这样的神贴 嘿嘿
页: [1]
查看完整版本: CodeIgniter中引用某一个表情(smiley)