表情辅助函数
这个表情文件包含一系列管理表情的函数.
加载表情辅助函数
可以使用下面的代码加载此辅助函数:
$this->load->helper('smiley');
总体来看
这些笑脸表情是用普通的文本来描述的,像 :-) 然后再将他们转换成真正的表情
这里显示了许多表情图片,当你点击图片的时候,它们就会被插入到一个表单区域中.比如,你有一个允许用户评论并且可以插入表情的的博客,你的访问用户可以点击满意的表情图片,然后在javascript脚本的帮助下插入到相应的表单区域.
可点击的表情
这里有个案例将教给你如何在表单的旁边创建可以点击的各种表情.首先你需要下载并安装表情包,然后再建一个控制器和相应的视图作为描述文件.
重点提示:开始之前,请下载表情图片然后把它们放在可以公开访问的服务器上.这个辅助函数采用数组的形式替换各种表情,在目录application/config/smileys.php 中可以查看
控制器
在你的application/controllers/目录中创建一个文件命名为smileys.php 然后加入下面的代码.
重点提示:修改你的表情url在函数get_clickable_smileys()的参数中,url指向你的smiley路径.
可以看到添加表情的时候我们使用的是Table Class.
在你的_application/views/_文件夹下,创建一个名字为smiley_view.php的文件,然后加入下面的代码:
<?php
class Smileys extends CI_Controller {
function __construct()
{
parent::__construct();
}
function index()
{
$this->load->helper('smiley');
$this->load->library('table');
$image_array = get_clickable_smileys('http://localhost/images/smileys/', 'comments');
$col_array = $this->table->make_columns($image_array, 8);
$data['smiley_table'] = $this->table->generate($col_array);
$this->load->view('smiley_view', $data);
}
}
?>
当你创建完控制器和视图之后,就可以显示你的表情了 _http://localhost/index.php/smileys/_ ### 字段别名 当修改视图的时候,会牵扯到控制器中的id字段,带来不便。为了解决这一问题,你可以在视图中给表情一个别名,并将其映射到id字段。
<html>
<head>
<title>Smileys</title>
<?php echo smiley_js(); ?>
</head>
<body>
<form name="blog">
<textarea name="comments" id="comments" cols="40" rows="4"></textarea>
</form>
<p>Click to insert a smiley!</p>
<?php echo $smiley_table; ?>
</body>
</html>
将别名映射到id字段, 传递他们两个到smiley_js函数:
$image_array = get_smiley_links("http://localhost/images/smileys/", "comment_textarea_alias");
$image_array = smiley_js("comment_textarea_alias", "comments");
函数参考
get_clickable_smileys()
返回一个已经绑定了可点击表情的数组。你必须提供表情文件夹的 URL,还有表单域的 ID 或者表单域的别名。
Note: Usage of this function without the second parameter, in combination with js_insert_smiley has been deprecated. ## smiley_js() 生成的 JavaScript 可以让图片点击后插入到表单域中。如果你在生成表情链接的时候提供了一个别名来代替id,你需要在函数中传入别名和相应的form id,此函数被设计为应放在你web页面的<head>区域
$image_array = get_smiley_links("http://localhost/images/smileys/", "comment");
Note: This function replaces js_insert_smiley, which has been deprecated. ## parse_smileys() 输入一个文本字符串,用来替换任何已经被包含的空白文本表情,而两者是等效的.第一个参数必须包含你的字符串,第二个参数是你的表情的存放目录:
<?php echo smiley_js(); ?>
$str = 'Here are some simileys: :-) ;-)';
$str = parse_smileys($str, "http://localhost/images/smileys/");
echo $str;
翻译贡献者:felee, Hex, icebird, keeweihan, zehee, zhupeng
当前内容版权归 CodeIgniter中国 或其关联方所有,如需对内容或内容相关联开源项目进行关注与资助,请访问 CodeIgniter中国 .