02 2013 档案

摘要:数据库理论的学习中,我们知道一个数据表只能有一个主键,然而这个概念可能应该更新了。昨天在看joomla数据表时,发现一个表中出现了两个主键,并发现它的好处是。如果数据库表设计是多对多的关系,即有一张表中存储内容中最主要是另外两个表的主键。这样如果将这两个设为该表的主键(联合主键)。插入数据时,若两个主键相同时保存,否则正常执行。但联合主键一旦建立后对 阅读全文
posted @ 2013-02-24 15:33 kelite 阅读(829) 评论(0) 推荐(0)
摘要:最近使用PHP开发工资管理系统的过程中因为要进行工资计算,需要进行四则运算。查资料后,确定使用PHP的PEAR库的Math_Rpn类进行。然而在使用的过程中发现了该类库的Bug。1、问题描述测试代码:include('RPN.php');$expArr=array( "(255.3*2)+33.2", "(655*2)+32.2", "(153*2)+31.2");$rpn = new Math_Rpn();foreach($expArr as $val){ echo "$val=".$rpn-&g 阅读全文
posted @ 2013-02-24 00:33 kelite 阅读(360) 评论(0) 推荐(0)
摘要:PHP的Pear库中已经定义好了RPN类用于计算逆波兰式,并同时可以让我们来计算中缀表达式的值。其使用方法也比较简单,且支持功能完善。在工资项目的计算中,根据需要对RPN类库进行了修改,让调用更加简洁。<?php/** * Math::Rpn * * 作用: * 计算中缀表达式的值 * 将表达式转换为逆波兰式,计算逆波兰式的值 * Change Expression To RPN (Reverse Polish Notation), Evaluate RPN Expression * * 示例: * 1、计算中缀表达式的值 $infix_express... 阅读全文
posted @ 2013-02-23 09:59 kelite 阅读(369) 评论(0) 推荐(0)
摘要:在PHP中实现公式表达式四则运算大概有两种方法:1)使用系统函数eval<?php//使用系统函数eval$str = 'L*((k-J)-(C+k))/M';$param = array('L' => 0.5, 'k' => 2, 'J' => 1, 'C' => 6, 'M' => 4);$str2 = '';for($i = 0; $i < strlen($str); $i++) { $tmp = substr($str, $i, 1) 阅读全文
posted @ 2013-02-23 00:59 kelite 阅读(651) 评论(0) 推荐(0)
摘要:目标是实现如下的计算公式:假设有一个计算公式如下: $expression = "(F1*F12+10.34)";其中的变量值如下:$expression_value = Array('F1'=>10, 'F12'=>20);我们希望用PHP构建一个类来计算出这个表达式的值。这种应用主要用于web工资管理中,用户可以自定义其工资相公式的情况 $rpn = new Math_Rpn(); $rpn->setExpressionValue($expression_value); echo $rpn->calculate($ 阅读全文
posted @ 2013-02-23 00:55 kelite 阅读(355) 评论(0) 推荐(0)
摘要:在dwz的dialog中进行批量操作的代码为:<li><a title="确定吗?" target="selectedTodo" rel="staffId" postType="string" href="<?php echo site_url('salary/appendStaffsToTemplate') ?>" class="add"><span>批量加入职工</span></a>& 阅读全文
posted @ 2013-02-21 11:33 kelite 阅读(1635) 评论(1) 推荐(0)
摘要:方法有两种:1.alter table tbname auto_increment = x ;设置表tbname的唯一auto_increment字段起始值从x开始,如果此表数据量很多的话,这样执行起来会很慢。2.truncate table_name ;直接清空所有数据,下次插入数据时auto_increment字段会自动从0开始。而delete from tbname不同的是delete只删除数据而不重置auto_incremnet. 阅读全文
posted @ 2013-02-21 00:32 kelite 阅读(506) 评论(0) 推荐(0)
摘要:PHP SOAP 扩展在使用时出现的状况:1、装载错误 错误描述:SOAP-ERROR: Parsing WSDL: Couldn't load from 'http://*****.14:8080/rpc/soap/jirasoapservice-v2?wsdl' : failed to load external entity "http://*****.14:8080/rpc/soap/jirasoapservice-v2?wsdl" 原因:SELinux 阻止 httpd 守护程序与同一台机器上的 LDAP 服务器沟通。 解决办法:$sets 阅读全文
posted @ 2013-02-20 18:59 kelite 阅读(1894) 评论(0) 推荐(0)
摘要:WIN7 Wamp速度缓慢可能的原因: 1、一般原因: Wamp的日志文件太大。处理办法,将位于wamp/logs/下的日志文件清空。 2、特殊原因 若重新安装后仍发现Wamp缓慢,甚至XAMPP等工具也出现缓慢等,应检查host文件的设置host应包含 127.0.0.1 localhost, 若使用host文件进行过广告过滤等操作,由于其包含127.0.0.1太多,导致性能下降,将其移除即可。 阅读全文
posted @ 2013-02-05 11:26 kelite 阅读(2680) 评论(0) 推荐(0)
摘要:观察者模式?事件允许你在不修改核心代码而将自己编写的代码到其他的代码中,因为这个是面向开发者而非终端用户,所以没有GUI来管理这些功能,取而代之的是通过修改配置文件来注册事件。保存事件数据有两种方法:使用数据库或文件。我们选用基于文件的方式。事件的注册:为了事件能够工作,首先必须在config/events.php文件中注册,通过以数组形式添加你代码的信息。每个事件只需要知道模块、控制器、类库、helper的名字就可以。示例:View Code $config['event_name'][] = array( 'module' => 'module 阅读全文
posted @ 2013-02-04 18:49 kelite 阅读(214) 评论(0) 推荐(0)
摘要:模板类为系统核心类库,为能更好的组织主题,使模板更加高效。/** */class Template{ private $_module = ''; private $_controller = ''; private $_method = ''; private $_theme = NULL; private $_theme_path = NULL; //主题的路径可以在配置文件中设置 private $_layout = FALSE; // By default, dont wrap the view with anything private 阅读全文
posted @ 2013-02-04 18:44 kelite 阅读(237) 评论(0) 推荐(0)
摘要:位于application的config文件:autoload.php是CI的可以指定自动加载的配置文件:为了能自动加载elite的核心代码,需要以包的形式加载HMVC的MX文件,他们位于thirdpary文件夹中,和elite的位置。代码中,一些类库为常用类库,故自动加载。自动加载的类库不宜很多,只需要加载核心和经常用的类库。代码: 1 $autoload['packages'] = array( 2 realpath(APPPATH .'../elite'), // elite Core 3 APPPATH.'third_party' ... 阅读全文
posted @ 2013-02-04 18:39 kelite 阅读(256) 评论(0) 推荐(0)
摘要:受篝火的启发,本目录结构为:application/ archives/ cache/ config/ controllers/ core/ db/ backups/ migrations/ errors/ helpers/ hooks/ language/ libraries/ logs/ models/ modules/ third_party/ views/elite/ codeigniter/ helpers/ libraries/ mig... 阅读全文
posted @ 2013-02-04 18:33 kelite 阅读(341) 评论(0) 推荐(0)