WEB快速开发
Seg:arSeg 函数配合自定义开发的html seg标签 实现同一块html代码的多重复利用实现快速开发,并且改善了模板嵌入php代码的难读的乱麻格局,使后台开发人员专助于功能的实现 配合相关的js插件,做到真正的一行php代码 ,完成一大块html + js 的功能,快速高效的 重用性开发。简单又不失高雅。
Seg\Html
常用的 html快速导入
Seg\Redirect 跳转页面自定义
Seg\Sys 系统默认实现的Seg标签 可以 动态的加入 css ,js代码。
其他的相关js插件,如弹出层layer,百度editor, 上传uploadify, 日历插件,配合自定义开发的地址,分类选择插件,简直好用到爆。(loader.seg集合了相关插件,调用的时候php就可以加载相关的js css 代码)
使用:拷贝 Extension\Seg目录至最外层Public目录中(与public.config.php同级)
已集成的代码示例效果:
自动加载 header , footer 文件
新建View\Layout\header.html View\Layout\footer.html
任何模板文件 将自动包含以上两个文件在头部和尾部,有利于专注于主体body的开发。
加载其他layout文件
$this->setLayOutfile('user');
将会寻找user_header.html user_footer.html文件自动导入
自动引入css js 代码
首先需要在头部文件加入代码
<?php /**必须加载的 css seg*/ include arCfg('DIR.SEG') . 'Sys/css.seg'; ?>
尾部加入代码
<?php /**必须调用自动加载的js seg*/ include arCfg('DIR.SEG') . 'Sys/js.seg'; ?>
以上两处建议分别写入View\Layout\header.html 和 View\Layout\footer.html文件
控制器代码:
css加载
// 加载的 Public\css\index.css $this->assign(array('cssInsertBundles' => array('index')));
js加载
// 加载 Public\js\user.js Public\js\index.js $this->assign(array('jsInsertBundles' => array('index', 'user')));
html里将自动生成 css js的引用
php控制器里调用js插件:
如开发的Seg扩展已经集成了 layer弹框插件,如何调取?
代码:
// 调用layer插件 arSeg(array( 'loader' => array( 'plugin' => 'layer', 'this' => $this ) ) );
layer 弹出框api 参考 http://sentsin.com/jquery/layer/api.html
跳转成功:
核心代码:
$this->redirectSuccess('index', '登陆成功!');
跳转失败:
核心代码:
$this->redirectError('', '用户名密码错误');
百度editor及上传uploadify 插件
控制器代码:
// 调用百度editor, uploadify上传插件 arSeg(array( 'loader' => array( 'plugin' => 'bdeditor,uploadify', 'this' => $this ) ) );
效果:
模板代码:
<!--百度editor--> <script id="baidu_editor">默认内容</script>
uploadify上传:
添加按钮即可实现上传
地址选择框
模板调用代码:
<?php // 调用选择地址插件 arSeg(array('select_area' => true)); // 调用分类插件 arSeg(array('select_cate' => true)); ?>
select_area 即为要调用的 select_area.seg文件(很大一堆的js html 代码就 引入了过来,代码放在哪里就在哪里扎根了<-|->)
四级地址选择代码
//地址选择 $(".select-area").select_area({ // 选中时触发 onSelected: function (res) { // res 为json数组 alert('选中了一个分类'); }, // 初始化地区id rid: 0, // 级数 level:4, // 初始化执行结束 onInit: function (res) { // res 为json数组 配合初始化rid显示选中的地区 alert('初始化'); } }); 初始化如:
选择分类
// 分类选择
调用如jquery的选择器的
$(".select-cate").select_cate({ // 选中时触发 onSelected: function (res) { $("[name='cid']").attr('value', res['cid']); // alert(res.cid); $("[name='cid-show']").attr('value', res['name'] +'-'+ res['parent']['name'] +'-'+ res['parent']['parent']['name']); }, // 初始化地区id cid: $("[name='cid']").attr('value'), // 初始化执行结束 onInit: function (res) { $("[name='cid-show']").attr('value', res['name'] +'-'+ res['parent']['name'] +'-'+ res['parent']['parent']['name']); } });
效果
根据Seg标签 将创建出更多灵活 定制化强的 企业级型插件
以上js插件已分享到arphp 交流群:259956472
国内doc http://arphp.coiu.cn/doc 国外doc http://www.coiu.cn/doc