在弄一个ORM。
取一个数据集的时候大致是这样。
$dataSet=$manager->getList($filter);
需要一个过滤条件,相当于select语句的where子句
考虑了很多形式
一开始想
$filter->addFilter('Author::name=="XiaoWang"');
似乎很直观。但后来写测试的时候发现一个问题。如果用户用字符串值,还要自己去处理转义。
看了下hibernate的方法,是类似于
$filter->add(Condition::eq('Author::name',"XiaoWang"));
感觉很怪。我想没必要去追求完美的面向对象结构,好用就行,就先弄成这样:
$filter->add('Author::name','==',"XiaoWang");
反正以后修改涉及的地方也就这一个类和TestCase。
-
程序接口
2006-01-25 14:03 -
单元测试
2006-01-19 14:14最近在改自己的php的ORM。尝试用phpunit2自动测试。有了这个确实很舒服。看一个'ok'比人工比较结果方便多了,而且Test Case还可以重复利用。改了一点就运行一下测试,如果ok了就继续。不过phpunit2有时候会莫名其妙什么都不出来,过一会又会好了,不知道室那里的问题。
-
php.ini
2005-12-17 16:00本来我有php4和php5,分别在c:\php,c:\php5。
从某一天开始,php4突然出了问题,是因为没有读取自己目录下的php.ini,而去读取了php5的。因为平时也不用php4,也就没去关注。今天装了php-gtk2,发现无法运行,检查下来又是这个问题。先看了c:\,c:\winnt,c:\winnt\system32,那里没有php.ini,又看了path变量,除了php-gtk2安装的时候自动加的那个,也没有其他的php目录。想将就一下,把php-gtk2里的东西复制到c:\php5,共用一个 php.ini,结果发现打开了ini里打开了php-gtk,就不能用cgi了……
后来用dl()将就了一下,但到底不爽。google了一下,得到一个提示。到注册表里搜索了一下,找到一个inifilepath,删除以后,一切都清静了。
p.s. 由于blogchina发生故障,导致这篇东西憋了好几个小时。好不容易可以登陆了,结果
提示: 文章发布失败,请尝试重新发布
-
[ZT]解决phpMyAdmin2.6以上版本数据乱码问题
2005-11-24 16:29在phpMyAdmin2.6以上版本因为支持多语言集,弄得我们使用phpMyAdmin管理数据库的时候,查询出来的中文都是乱码,但是在我们的PHP程序调用时却没有这些问题。
看来是phpMyAdmin2.6的配置有问题了,为了解决这个问题,我上google上搜索了相关资料,这类的问题很多,但没一个可以解决的,真是没办法,看来只有自己动手解决了。。。。由于查找源代码过程非常烦琐,略最终花了半天的时间,总算找到了一个比较折衷的方法来解决。去phpMyAdmin2.6的根目录下,打开以下这个文件:
libraries/select_lang.lib.php
1、找到有"zh-gb2312"的那一行,把'zh-gb2312' 改成 'zh-gb2312-utf-8'
为什么这样加?那是因为服务器会把没有"-utf-8"的语言过滤掉,在libraries/database_interface.lib.php 第168行,根据英文说:“为了防止混淆”,:<或者如果不把'zh-gb2312' 改成 'zh-gb2312-utf-8',可以去掉过滤吧。把那个if去掉就OK了。2、找到"$mysql_charset_map = array("那一行
把'gb2312' => 'gb2312',
改成 'gb2312' => 'latin1',保存,OK,在进入phpMyAdmin管理,选择语言chinese simplified(zh-gb2312-utf-8)
再看看你的那些中文数据。所以说,我的这个解决办法就只是修改libraries/select_lang.lib.php这一个文件里的两个字就行,比较方便快捷,哈哈。
-
自己又写了个截取中文字符串的函数
2005-11-07 20:39自己又写了个截取中文字符串的函数
$s="[北京的金山上]";
function ch_left($s, $len){
if(strlen($s)>$len)
$s=substr($s, 0, $len);
$ch='['.chr(0x81)-chr(0xff).']';
if(preg_match("/$ch($ch{2})*$/", $s))
$s=substr($s,0,-1);
return $s;
}
echo ch_left($s,8);
?>
-
[ZT] 如何判断一个Gif是否动画
2005-09-24 12:55从easy的blog转来的
http://blog.phpmore.com/index.php?op=ViewArticle&articleId=535&blogId=10
如何判断一个Gif是否动画?
作者 Easy | 22 九月, 2005
首先想到的是用getimagesize()看看type,发现都是gif然后想gif动画是gif89格式的,发现文件开头是gif89。但是很多透明图片也是用的gif89格式。看来必须分析文件的祯了。baidu了一下,发现phpx有解决过了。叨唠的说明:检查文件中是否包含
chr(0x21).chr(0xff).chr(0x0b).'NETSCAPE2.0'chr(0x21).chr(0xff) 是gif图片中扩展功能段的标头
'NETSCAPE2.0'是扩展功能执行的程序名





