源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

专为新手写的结合smarty的类第1/3页

  • 时间:2020-07-17 16:57 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:专为新手写的结合smarty的类第1/3页
专为新手写的结合smarty的类,诚挚邀请大家多提宝贵意见 这个是为新手(也为自己)写的结合smarty一起使用的类,是未完成的,现在放出来的目的不是马上让新手使用,所以也没有把注解写的非常详细 希望各位高手多多提意见,我尽量完善它。     首先声明,我写这个的目的也是为了锻炼自己,尽管我知道现在已经有很多类似的类了,但是我还是决定来写一个, 所以请大家在浏览的时候口下留情。 还有文件我也已经打包上传了,放在下面,请大家多多下载,多多提意见。有什么问题直接Q我 目前该类包括以下功能(使用范例,设$m = new Machine_m()) [数据库] 目前支持MYSQL与ACCESS两种数据库 配置参考config.php文件 使用:$m->send_query(SQL语句)// $m->select_query(SQL语句,是否返回资源,默认为false即返回一个二维数组) [错误处理] 分为系统错误和用户错误 系统错误: $this->sys_err( '配置错误,请检查config配置文件', 'die'); 第一个参数将记录错误信息到/lib/error/system.err中,第二个参数是处理方法(keep or die),如果需要修改浏览器端提示的话,还可以设置第三个参数,它默认为“很抱歉,本站发生系统错误,请稍候再试。” 用户错误: $m->user_err( '注册系统关闭', 'die', $_SERVER['HTTP_REFERER'] ); 第一个参数是显示到浏览器端的提示,第二个参数是处理方法(keep or die),第三个参数是跳转页面,如果需要记录错误信息的话,还可以设置第四个参数,它将记录错误信息 到/lib/error/user.err中,不设默认不保存。 浏览器端的错误提示默认调用/lib/error/下的err_page.htm模版文件,也可以设置自己的错误模版文件,然后用$m->err_page=加载。 [静态生成] 只用短短一行就自动生成静态页面,跳转时可设置静态页面过期时间 (现在还是不完全的静态,完全的比较复杂,目前没有整合,大家如果要实现完全静态的话,可以结合我的create_html函数和文本操作系列函数实现) 使用方法: $m->create_html(模版文件,静态输出路径,输出的文件名); 跳转: $m->goto_html(); 输出文件名默认等于当前php文件的文件名,提供这个参数目的是,当有需要使用静态分页时,可以用这个参数设置 [二维数组排序 (推荐)] 可以让二维数组作类似:“先按字段a升序,再按字段b降序”这样的排序 使用方法: 设有这样一个数组:$x = array( array('name'=>'machine_马', 'age'=>23),array('name'=>'tom',age=>28),…… ) 我们现在要把此此数组先按name升序排,再按age降序排 则用法为m_sort($x,'name',SORT_ASC,'age',SORT_DESC) [动态加载] 对于不常用的功能,我采用加载的方法来使用,个人认为这样可以节约资源 例如,如果我们要使用m_sort函数时,默认是没有加载这个函数的 需要这样加载:$m->load_func('m_sort') 然后就可以使用m_sort函数了 [分页] 这里我也不知道做得好不好,我是先写了一个类,再写一个函数来调它,目的是使用得时候比较方便 使用方法:m_page(数据条数,当前页号,每页多少行,显示多少个跳转链接) 函数返回一个数组:array(   'rows' => 每页显示多少行,   'prve' => 上一大页页号,//所谓大页,就是类似上7页,下7页这样的跳转   'next' => 下一大页页号,   'pages' => 共有多少页,   'start' => SQL查询的开始记录数,   'count' => 共有多少条记录,   'links' => 链接页号,//如果共有13页,链接数是7个,当前又在第二大页,则输出array(8,9,10,11,12,13)   'current_page' => 当前页号   ); [验证表单] 把需要验证的表单事先写进函数类,判别的时候只需要把$_POST传入就可以了 使用方法:这个大家自己看函数就应该看得明白,这个函数需要大家按照自己的需求来修改的 [防止跨站攻击] 把这个功能也写道一个函数内了 [中文截取函数] 不是我写的,拿来修改了一下而已 [上传文件] m_up_file($_FILES,上传路径,文件类型,大小限制) 其中上传路径可以这样设置,1:直接写文件夹路径,2:array('gif'=>'file/gif','jpg'=>'file=>jpg'),这样gif文件自动放入file/gif文件夹,jpg文件放入file/jpg文件夹 文件类型:写法1:'jpg',写法2:array('jpg','jpeg','gif') 返回array( 'arr' => 已上传的文件数组, 'err_msg' => 上传过程中的错误信息, 'num' => 上传成功数 ) [文本操作 (推荐)] 假设有这样一个字符串 $str="你好<!--content-->phpchina<!--/content-->"; 我们可以这样修改 $new_str=m_txt_replace('content','machine_马',$str); 现在$new_str的值为"你好<!--content-->machine_马<!--/content-->" 其他的几个函数,如:m_txt_add,m_txt_delete,m_txt_get都是类似的,大家可以自行参看。 注意:这个就是生成静态页面之后,修改的方法。 可以参见6to23并思考为什么他一篇帖子放了那么多回帖速度还那么快 答:因为它的回帖没有进数据库而是直接写到静态文件里面,再使用类似我上面的方法来修改的。你可以看他的源代码,找找<!--你就知道了。 目前已经基本实现就是以上功能了 接下来还打算做 [图片处理] [UBB代码输出] 等一些其他常用功能 希望各位高手多多提意见 主类:
[url=http://www.1sucai.cn/article/5036_2.htm]2[/url][url=http://www.1sucai.cn/article/5036_3.htm]3[/url][url=http://www.1sucai.cn/article/5036_2.htm]下一页[/url][url=http://www.1sucai.cn/article/5036_all.htm]阅读全文[/url]
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部