[转]测试驱动开发在PHP中的应用
摘要:转载自: http://blog.csdn.net/oxware/article/details/55875本文已被成都计算所《计算机应用》采用,版权属于该杂志与作者共同所有,并不同于其他在网上发表之文章,请勿擅自转载。1.TDD测试驱动开发(Test-Driven Development, TDD),是近年来兴起的一种软件开发方法。作为一项最佳实践,测试驱动开发在XP方法中占有重要地位。其对开发效率、代码健壮性的显著改进已被越来越多的实例项目所证实。TDD的主要精神可以概括为“测试先行,快速反馈”。在有实际功能代码之前就开始编写测试代码,通过测试来反映设计,使得测试代码成为事实上的设计文档。
阅读全文
posted @
2011-07-19 19:16
DavidYanXW
阅读(1431)
推荐(0)
[转]PHP5中——abstract抽象、final最终和static静态
摘要:1.abstract一. 面向对象程序通过类的分层结构构建起来. 在单重继承语言如PHP中, 类的继承是树状的. 一个根类有一个或更多的子类,再从每个子类继承出一个或更多下一级子类. 当然,可能存在多个根类,用来实现不同的功能. 在一个良好设计的体系中,每个根类都应该有一个有用的接口, 可以被应用代码所使用. 而抽象类就可以提供多个实用的接口.如果你建立了一个只有抽象方法的类,那么你就定义了一个接口(interface).在抽象类中定义的方法,也都是抽象方法,当然,抽象方法与普通的方法不一样,它只是子类中普通方法的一个占位符(只是占个地主不启作用),没有任何代码,也没有"{}&quo
阅读全文
posted @
2011-07-19 16:04
DavidYanXW
阅读(277)
推荐(0)
[转]PHP获取当前页面的URL
摘要:转载自:http://www.ludou.org/get_current_page_url.html 使用PHP编写程序的时候,我们常常想要获取当前页面的URL。下面提供一个用于获取当前页面URL的函数以及使用方法:示例一:123456789101112131415161718192021222324<?php// 说明:获取完整URLfunctioncurPageURL(){ $pageURL='http'; if($_SERVER["HTTPS"]=="on") { $pageURL.="s"; } $pag
阅读全文
posted @
2011-07-13 23:09
DavidYanXW
阅读(304)
推荐(0)
[转]php连接mysql类(mysql.class.php)
摘要:转载自: http://blog.sina.com.cn/s/blog_4cd8ff670100bpvl.html<?phpdefine("MYSQL_SQL_GETDATA", 1);define("MYSQL_SQL_EXECUTE", 2);class mysql_db{var $_server;//数据库服务器地址var $_user;//数据库连接帐号var $_password;//数据库连接密码var $_dbname;//数据库名称var $_persistency=false;//是否使用持久连接var $_isConnect =
阅读全文
posted @
2011-06-30 16:50
DavidYanXW
阅读(502)
推荐(0)
phpmyadmin设置允许管理多台服务器
摘要:1. phpmyadmin(简称PMA)的配置文件是PMA根目录下的config.inc.php, 而不是libraries/下面的config.default.php.2. 参数设置如下:1) 修改PMA登录方式.$cfg['Servers'][$i]['auth_type'] = 'cookie';2) 设置可以访问任意服务器$cfg['AllowArbitraryServer'] = true;3) 清空缓存.通常由于缓存, 即使修改了上面的两个配置, 仍旧显示原先的登录方式, 可以清空一下缓存,重新登录即可.
阅读全文
posted @
2011-06-30 11:31
DavidYanXW
阅读(371)
推荐(0)
PHP之heredoc
摘要:1.以<<<End开始标记开始,以End结束标记结束,结束标记必须顶头写,不能有缩进和空格,且在结束标记末尾要有分号。开始标记和开始标记相同,比如常用大写的EOT、EOD、EOF来表示,但是不只限于那几个,只要保证开始标记和结束标记不在正文中出现即可。2.位于开始标记和结束标记之间的变量可以被正常解析,但是函数则不可以。在heredoc中,变量不需要用连接符.或,来拼接,如下:$v=2;$a= <<<EOF"abc"$v"123"EOF;echo $a; //结果连同双引号一起输出:"abc"2 &
阅读全文
posted @
2011-06-27 17:40
DavidYanXW
阅读(270)
推荐(0)
PHP发邮件注意的问题
摘要:换行的地方,需要加上"\r\n"标签; 即使是在"</tr>"这样的结束标签的地方也要加上换行标签.否则,邮件内容里面超过一定宽度时会自动截断.
阅读全文
posted @
2011-06-27 17:38
DavidYanXW
阅读(122)
推荐(0)
[转]获取客户端的真实ip
摘要:转载自:http://hi.baidu.com/jingweidu/blog/item/0953368720ce552ac75cc35b.html转载网上一段代码如下function GetIP(){if (getenv("HTTP_CLIENT_IP") && strcasecmp(getenv("HTTP_CLIENT_IP"), "unknown"))$ip = getenv("HTTP_CLIENT_IP");else if (getenv("HTTP_X_FORWARDED_FO
阅读全文
posted @
2011-06-21 00:22
DavidYanXW
阅读(249)
推荐(0)
[转]IDE之zend studio: zend studio8使用感受
摘要:转载自:http://www.cnblogs.com/luxixing/archive/2010/11/07/1871366.html 我不知道大家在开发PHP的过程中使用什么工具,但是对于大部分新生代(哈,就是入行不久大概在05年之后吧)的PHPer说,zend studio可能是首选的了。vim,nodepad++等等虽然不错,但是现在的机器配置都很不错了,不至于会跑不起zend studio的。 现在zend studio已经到第八个版本了,进步很大。我用过zend studio的很多版本,5.x,6.x,7.x,到现在的8,之前版本存在的问题越来越少了,用起来真的很舒心,能为你节省..
阅读全文
posted @
2011-06-19 23:09
DavidYanXW
阅读(360)
推荐(0)
[转]使用 PHP 创建定制 SSO 登录页面和注销页面
摘要:转载自:http://www.oracle.com/technetwork/cn/articles/technote-as-signoff-097232-zhs.html如果安装了Oracle 应用服务器 10g企业版并准备创建定制 SSO 登录页面和注销页面,则您可能需要考虑使用 PHP,而非传统的 PL/SQL 和 JSP 方法。使用 PHP 比使用 PL/SQL 和 JSP 的一大优点是可以轻松地部署和修改页面。使用 PHP,您只需打开文件,进行更改,然后保存该文件即可。新页面和更改将立即生效。本技术说明演示了使用 PHP 创建和管理定制 SSO 登录页面和注销页面是何等的迅速和简单。定
阅读全文
posted @
2011-06-19 14:54
DavidYanXW
阅读(472)
推荐(0)
[转]搜狐单点登陆实现方案
摘要:转载自: http://blog.chinaunix.net/space.php?uid=1760882&do=blog&id=90745在一个比较复杂的网站环境下。有多个产品向外提供服务。每个产品下都有自己的用户登录界面。现在需要设计一个统一的登录界面。当用户在这个界面登录后就可以自由的使用各个产品和服务。同时意味着用户用一个帐号可以在不同服务里登录,另一方面就是在一个服务里面登录后可以无障碍的漫游到其他服务里面去。实际应用:Sohu的Passport将focus.cn,17173.com,sogou.com,chinaren.com这四个域名下的产品全部整合在一起了。用户在
阅读全文
posted @
2011-06-17 16:46
DavidYanXW
阅读(329)
推荐(0)
[转]LoongSSO 大中型WEB系统单点登陆(SSO)整合利器
摘要:转载自: http://blog.chinaunix.net/space.php?uid=1760882&do=blog&id=93117我们都知道网易、搜狐等大型门户都有“通行证”的概念,这个通行证系统就是今天讨论的“单点登录系统”。其主要特征是多个站点一个用户中心,一点登陆后其他也自动登录,注销也是。比如我们在126登录了邮箱,再去163.com就是登陆状态。就好比要建一个摩天大楼,打好地基是重点之重.看到SSO的重要性了吧.下面我简单介绍一下国际一些名气比较大的SSO解决方案:一. SAMLSAML,鸟语全名为Security Assertion Markup Langu
阅读全文
posted @
2011-06-17 16:45
DavidYanXW
阅读(443)
推荐(0)
[转]PHP功能齐全的发送邮件类
摘要:转载自:http://www.chinaz.com/Program/PHP/12091005632009.html今天给大家介绍的这个类的功能则很强大,不但能发html格式的邮件,还可以发附件。以下为邮件类代码:<?phpclass Email {//---设置全局变量var $mailTo = ""; // 收件人var $mailCC = ""; // 抄送var $mailBCC = ""; // 秘密抄送var $mailFrom = ""; // 发件人var $mailSubject = &quo
阅读全文
posted @
2011-06-01 00:11
DavidYanXW
阅读(220)
推荐(0)
[转]PHP中计算字符串长度
摘要:转载自: http://vtrtbb.iteye.com/blog/607091PHP计算字符串长度,包括计算英文、GBK、UTF-8多种字符集下PHP如何计算字符串长度。英文字符串长度strlen()是PHP自带的计算英文字符串的函数。GBK字符串长度中文字符计算为2个字符,英文字符计算为1个,可以统计中文字符串长度的函数。functionabslength($str){$len=strlen($str);$i=0;while($i<$len){if(preg_match("/^[".chr(0xa1)."-".chr(0xff)."]
阅读全文
posted @
2011-05-31 19:22
DavidYanXW
阅读(278)
推荐(0)
[转]PHP运算符优先级的一个例外
摘要:转载自: http://www.laruence.com/2010/07/26/1668.html今天在老王的技术手册看到一个问题:<?phpif ($a = 100 && $b = 200) {var_dump($a, $b);}输出是什么?这个问题, 咋一看或许觉得简单, 但其实仔细推敲并不简单,如果说布尔与之前的部分, 是由于优先级的问题, 但是如果仅仅是优先级的问题的话, 那么结果应该是:$a = (100 && $b) = 200而实际上的结果, 确实高优先级的&&让步给次优先级的=, 让 $b = 200 先结合了.究其原因,
阅读全文
posted @
2011-05-30 20:51
DavidYanXW
阅读(278)
推荐(0)
PHP数组容易犯错误的地方
摘要:1. foreach中unset引用元素<?php$array = array(1,2,3);foreach($array as &$value) {}$value = 4; //var_dump($array);unset($value); //var_dump($array);?>array(3) {[0]=>int(1)[1]=>int(2)[2]=>&int(4)}array(3) {[0]=>int(1)[1]=>int(2)[2]=>int(4)}foreach中unset引用&元素,只是
阅读全文
posted @
2011-05-24 18:46
DavidYanXW
阅读(368)
推荐(0)
[转]PHP 计算页面执行时间
摘要:转载自: http://www.ccvita.com/26.htmlPHP 计算页面执行时间<?php< ?phpclassruntime{ var$StartTime=0; var$StopTime=0; functionget_microtime() { list($usec,$sec)=explode('',microtime()); return((float)$usec+(float)$sec); } functionstart() { $this->StartTime=$this->get_microtime(); } functionsto
阅读全文
posted @
2011-05-24 15:04
DavidYanXW
阅读(185)
推荐(0)
[转]总结的一些PHP开发中的tip
摘要:转载自:http://www.zendstudio.net/archives/some-php-development-tips-from-my-own/以下这些tips,是我在实际工作中慢慢形成的,有些可能是不正确的,有些出于个人习惯,所以,千万不要把以下这些条当成什么标准,其中可能隐藏着天大的bug,代码可能正在病态的运行中,SO!请一定仔细的看过后想想,这么做的好处是什么?会产生怎样的负面影响?有问题特别欢迎你来和我讨论。这就是我写这篇文字的目的,希望能和大家多多交流,也希望不断完善自己,同时又能给大家一些帮助。开发习惯和PHP代码:1、准确的理解各种概念。现在的新东西层出不穷,望文生义
阅读全文
posted @
2011-05-23 21:34
DavidYanXW
阅读(413)
推荐(0)
[转]php中static关键字在类中的使用
摘要:转载自: http://blog.csdn.net/klinghr/archive/2010/01/19/5212912.aspxstatic关键字用来修饰属性、方法,称这些属性、方法为静态属性、静态方法。static关键字声明一个属性或方法是和类相关的,而不是和类的某个特定的实例相关,因此,这类属性或方法也称为“类属性”或“类方法”如果访问控制权限允许,可不必创建该类对象而直接使用类名加两个冒号“::”调用。static关键字可以用来修饰变量、方法。不经过实例化,就可以直接访问类中static的属性和static的方法。static 的属性和方法,只能访问static的属性和方法,不能类访问
阅读全文
posted @
2011-05-23 19:15
DavidYanXW
阅读(1075)
推荐(0)
phpmyadmin常见问题
摘要:1.“配置文件现在需要一个短语密码。”的红色警叹提示解决方法:编辑config.inc.php$cfg['Servers'][$i]['auth_type'] = 'cookie'; $cfg['blowfish_secret'] = 'abcde';(其中的"abcde"自定义)这个密码用于Cookies的加密,以免多个PhpMyAdmin或者和其他程序共用Cookies时搞混。2.错误 使用链接表的额外特性尚未激活。要查出原因,请单击此处。解决方法:点击“导入”,导入PhpMyAdmin 官
阅读全文
posted @
2011-05-18 21:02
DavidYanXW
阅读(291)
推荐(0)