随笔- 28
文章- 2
评论- 15
阅读-
59823
随笔分类 - PHP
shopnc二次开发(二)
摘要:一般来说二次开发,多数就是修改界面和增加功能这两个需求先说修改界面mvc 架构的程序,在界面这里,基本就是调用数据。常见的界面数据构架有三种1.是业务端或者是控制端数据驱动界面,基本上是后台输出啥数据,界面表现啥数据。这样麻烦的地方在于如果要更换模板的话动刀会动的比较大,除非没有更换模板的需求。如果...
阅读全文
shopnc二次开发(一)
摘要:---恢复内容开始---以前没有怎么接触过shopnc,感觉界面挺漂亮的,不过后来自己需要开发一个电商系统,就顺便参考了下,感觉构架垃圾的一塌糊涂。不过平时做这个系统二次开发的业务比较多,所以简单的总结下。shopnc有三款产品,b2b2c,c2c和o2o,用的同一个mvc框架和相同的开发规范,所以...
阅读全文
LotusPhp中配置文件组件LtConfig详解
摘要:LotusPhp中配置文件组件LtConfig是约定的一个重要组成部分,适用于多个场景,多数的LotusPhp组件如数据库,缓存,RBAC,表单验证等都需要用到配置组件,LtConfig配置组件也是LotusPhp框架中的基类。以后讲解LotusPhp组件的时候都会讲解配置文件的内容和格式,本章节主要说的是配置文件的文件目录要求,格式以及实际应用。LtConfig组件有2个组成部分,框架目录中的Config.php和ConfigExpression.php主要通过LtConfig读取,写入,更新配置文件,而配置文件是通过文本文件的形式保存在入口文件定义的缓存文件夹内请打开上次的HelloWor
阅读全文
PHP通过字符串调用函数
摘要:1. call_user_funcfunction a($b,$c){ echo $b; echo $c;}call_user_func('a', "111","222");call_user_func('a', "333","444");//显示 111 222 333 444?>//调用类内部的方法比较奇怪,居然用的是array,不知道开发者是如何考虑的,当然省去了new,也是满有新意的:class a { function b($c){ echo $c; }}call_u
阅读全文
LotusPhp入口文件解析
摘要:LotusPhp也是单入口的框架,可以根据需要开启多个应用实例例如前台页面可以用index.php作为入口文件,后台可以用admin.php作为入口文件,多个应用实例可以共享应用配置和类库或者根本每个应用实例定义不同的配置和类库。在LotusPhp框架中,有3个重要的组成部分类库+约定+胶水代码而LotusPhp就是通过胶水代码来整合所有类库和约定的,正常情况下,只要引用框架目录中的Lotus.php一个文件即可,其他文件都可以通过Autoload类库自动加载现在我们就来了解下入口文件的规范devMode = true;//定义文件缓存目录$lotus->defaultStoreDir
阅读全文
LotusPhp起步:经典的HelloWorld
摘要:写了几篇LotusPhp,一直没有跑个程序,感觉好像步骤有点错,所以先上个经典的Demo,HelloWorld吧先按推荐目录建好文件夹,如果懒的建,下面有下载的Demo包,解压就可以用,因为简单,也没有用样式,所以解压到任何目录都可以跑的起来。先不用考虑怎么用,关键的文件其实就是runtime/app/frontend/action/default-index.php和runtime/app/frontend/view/default-index.phpDemo主要应用了MVC,及一些基本的文件夹设置,以后的范例基本会在Demo的基础上建立现在来书写index.php的内容,这个是所有程序文件
阅读全文
phpcms用户vip过期后自动降低用户等级的办法
摘要:最近帮一个客服做个系统,要求收费会员到期后自动取消vip权限,因为很多文章和内容需要高级会员才可以浏览,一到期后就必须恢复为普通会员,这个系统是用phpcms开发的,使用过程中发现用户升级容易,却无法在到期后自动降级,后来查看源代码中,做了一处修改,可以完美实现vip到期后用户自动降级。在phpcms/modules/member/index.php 中查找//vip过期,更新vip和会员组if($r['overduedate'] < SYS_TIME) { $updatearr['vip'] = 0;}修改为//vip过期,更新vip和会员组if($r[
阅读全文
重装MySQL失败的终极解决办法!
摘要:相信大家使用MySQL都有过重装的经历,要是重装MySQL基本都是在最后一步通不过,除非重装操作系统,究其原因就是系统里的注册表没有删除干净。下面是我总结的一点经验,都是血的教训:1。在“运行”里键入regedit进入注册表。2。HEKY_LOCAL_MACHINE\SOFTWARE\MYSQL目录删除3。HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Eventlog\Application\MySQL 目录删除4。HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services\Eventlog\Applic
阅读全文
LotusPhp推荐的程序目录
摘要:一个好的项目都会固定格式的目录,Lotusphp相对会灵活一些,可以合理安排自己的程序运行目录,这里我推荐2种目录的设置结构第一种是Lotusphp推荐的目录结构,首先要确保服务器开启了父目录引用的功能,或者通过rewrite引导到 wwwroot/frontend里(但是不建议这样,因为可能存在多个应用,除非你就一个应用,默认引导到index.php)├─framework├─app│ └─frontend 应用名称│ ├─action│ ├─conf│ ├─lib│ └─view│ └─l...
阅读全文
LotusPhp框架目录
摘要:顺序有点乱,其实简介后面应该跟程序目录的介绍,那几天赶着比较忙,就写了些简单的,今天回到正轨,将有次序的写完所有的Lotusphp的文档│ Config.php Config /配置类│ ConfigExpression.php ConfigExpression /配置表达式类│ Lotus.php 胶水代码│ shortcut.php LtObjectUtil类的快捷调用函数│ Store.php ...
阅读全文
linux下卸载php
摘要:头一回操作linux服务器,虽然以前也玩linux,但是基本是在客户机上,没有正经在生产环境下操作过,正在做的一个项目里,用的linux,但是装的版本比较老,于是准备卸载。上网搜了下资料,自己也是边看边学,又找了几本资料,对照下。首先先要列出php的安装包在命令行键入# rpm -qa|grep php会列出php相关的安装包输入rpm -e 加包名卸载该软件,所列出的包名依次进行卸载只要记住命令还是不难的,当然apache也得卸载重装过程是一样的过程中会有一些比较顽强的包不好卸载,可以用这个命令来卸载# rpm -e 程序包名 --nodeps
阅读全文
LotusPhp学习六:Validator 组件的使用
摘要:趁现在炖肉的呢,抽个空赶紧写一篇,每天忙死。Validator 组件顾名思义就是表单验证组件,负责检验各种表单输入是否符合规则。由2个类组成,一个是LtValidator,是专门负责验证的,LtValidatorDtd 是用来定义各种验证规则和返回提示的LtValidator 的公共方法除了 init() 初始化的组件外,就一个 validate 方法。Validator 组件支持10种验证规则:ban通常用来验证字符串中不包含指定字符的,例如用户名不能包含xxx 输入只支持正则表达式,需要用//引起来.具体可以参考php手册里的preg_match函数mask通常用来验证字符串中包含指定字符
阅读全文
LotusPhp学习五:Captcha 组件的使用
摘要:目前这个学习文档的次序有点乱,我也是看哪个简单就先写哪个,正确的应该是介绍文档,然后介绍文档的目录结构,然后,各个组件有个简介,再跟下来来个 HelloWorld ,然后单独介绍组件,然后进阶使用等等,这么个次序才是正确的,不过最近比较忙,最后写完会重新整理出一个次序来的。Captcha 就是LotusPhp 验证码的组件,一般来说,比较规范的 LotusPhp 组件都会由3个部分组成,就是分别是配置文件,框架源码和应用源码,框架源码的话自己下就行了,我这里不占地方贴代码了,这里就是写出配置文件和应用范例,能快速看懂会用为原则。Captcha 组件可以快速生成验证码,这个验证码不借助于 Ses
阅读全文
LotusPhp学习四:Cookie 组件的使用
摘要:Cookie最常见的操作无非是读、写、删三个操作,当然还要有安全性的操作,否则恶意查看修改 Cookie,那还了得。LotusPhp 的 Cookie 组件也是非常简单易用的。首先,要新建一个配置文件,文件名为 cookie.conf.php,至于放在哪里等到讲到 Config 组件的时候会有一个阐述,今天先说怎么用,需要哪些步骤。Cookie配置文件的主要内容就是定义Cookie 的加密密匙,程序里自动对 Cookie 内容进行加密,当然这样有一个弊端,就是客户端无法直接读取和操作,只能服务器来操作。如果你要直接用 js 在客户端操作 Cookie ,那最好还是不要用LotusPhp 的 C
阅读全文
LotusPhp学习三:ObjectUtil 组件的使用
摘要:学习要先易后难,好吧,我刚开始学习LotusPhp的时候,就是从最容易的Logger和ObjectUtil开始的,这2个组件基本没有什么难度。一看就会。ObjectUtil组件其实就是单例模式的最好范例,声明调用各个组件的时候,用ObjectUtil调用,可以有效的防止调用过多的类而导致错误或者资源浪费。比如调用Db组件,这样声明就可以了$db = LtObjectUtil::singleton('LtDb');singleton方法是LtObjectUtil类中唯一的方法,目的就是声明类库,如果该类库存在init()方法,然后调用该类库的init()的方法。ObjectUti
阅读全文
LotusPhp学习二:Logger组件的使用
摘要:今天比较忙,本来想写多点内容,暂时没有办法了,捡个比较简单的组件来写下好了,往后的几章都是介绍组件。LtLogger的使用还是比较简单的,基本代码都是在Autoloader的环境下运行的,所以我也懒的去引用神马路径,调用神马类库,知道怎么用就可以了。$log=new LtLogger();//自己定义log的存放路径$log->conf=array('log_file' => '/log/system.log');$log->log(date('Y-m-d').' 加上当前程序名,操作人就是一条日志了');挺简单
阅读全文
LotusPhp学习一:初识LotusPhp
摘要:接触LotusPhp是从淘宝开放平台开始的,最早是为自己的网店做一个商品添加的程序,最初是用的浪子的TaoApi,但是这个程序基本不更新了,加上淘宝开放平台总是变来变去,官方的SDK默认包含的就是LotusPhp。 学习LotusPhp是有一定难度的,没有文档,只有一些组件的范例,感觉更像是一些类库的集合,而不像一个框架,缺乏一个统领整个类库的范例,虽然example里有一个通讯录的范例,但是没有用到所有的组件,比HelloWorld强点而已,对于其框架的理解和运用感觉还是用处不太大。 不过我还是比较喜欢这个框架的,这个框架是最初淘宝的员工覃健祥开发的,后来一群爱好者加入了开发小组,总...
阅读全文