首页 | PHP资讯 | 技术专栏 | 资源共享 | PHP培训 | PHP职场 | 图书 | PHP ON WIN | PHP圈子
返回列表 回复 发帖

php新手阳光系列:建立自己的工具类库

php新手阳光系列:建立自己的工具类库

前几天放假,出去玩了,现在继续这个系列
    前两回:
php新手阳光系列:写给新手的话 http://www.phpchina.com/bbs/thread-64864-1-1.html
php新手阳光系列:善用工具 http://www.phpchina.com/bbs/thread-64868-1-1.html
   
    ps:我不是什么大虾,就一个快毕业的学生,php方面就做过几个简单的项目,学php纯粹是因为兴趣学的:)现在在公司实习,工作主要是.NET相关,以后可能很少碰php了,所以想把以前做php项目时的经验与大家分享,希望对新手有用!
    许多功能是每个系统中都能用到的,比如验证码,邮件发送,计数器,smarty,分页,登录……
    将这些常用的工具类收集整理出来,并且根据工具类写出适当的接口函数,这样能提高对你项目开发的速度
   下面是几个示例
    网上有许多功能类,我们完全可以拿来使用,当然不是简单的直接使用,我们需要根据它建立自己能方便调用的接口。比如一个smtp邮件发送程序,需要提供服务器,用户名等参数,直接用的话不太方便,所以我们照下面的方式来处理
首先是根据smtp类写一个邮件发送类

require("smtp.php");
class email{
var  $smtpserver;// SMTP服务器
var  $smtpserverport;//SMTP服务器端口
var  $smtpusermail;//SMTP服务器的用户邮箱
var  $smtpuser;//SMTP服务器的用户帐号
var  $smtppass;// SMTP服务器的用户密
var  $smtp;
function email($mysmtpserver,$mysmtpserverport=25,$mysmtpusermail,$mysmtpuser,$mysmtppass)
{
  $this->smtpserver=$mysmtpserver;
  $this->smtpserverport=$mysmtpserverport;
  $this->smtpuser=$mysmtpuser;
  $this->smtppass=$mysmtppass;
  $this->smtpusermail=$mysmtpusermail;
}
function send($mailsubject,$mailbody,$mailtype = "HTML",$smtpemailto)
{

  $this->smtp = new smtp($this->smtpserver,$this->smtpserverport,true,$this->smtpuser,$this->smtppass);
  $this->smtp->debug = false;
  if($this->smtp->sendmail($smtpemailto,$this->smtpusermail, $mailsubject, $mailbody, $mailtype))
  {
   return true;
  }
  else {
   return false;
  }
}
}

使用时

function send($mailsubject,$mailbody,$smtpemailto,$type)
{
require("lib/email.php");//邮件类
require("APP/Config/email.php");//配置文件
$email=new email($smtpserver,25,$smtpusermail,$smtpuser,$smtppass);
if($email->send($mailsubject,$mailbody,"HTML",$smtpemailto))
return true;
else
return false;
}
然后直接调用send函数就可以发送邮件了

smarty
smarty使用时需要配置参数,聪明的方法是建一个类,继承smarty,如下

require('Smarty.class.php');
class MySmarty extends Smarty {
function MySmarty() {
  $this->Smarty();
  $this->template_dir = 'templates/';
  $this->compile_dir = 'templates_c/';
  $this->config_dir = 'configs/';
  $this->cache_dir = '_cache/';   
  $this->caching = true;
  //$this->assign('name','my name');
}
}
//使用时
$smarty = new MySmarty;
$smarty->assign('name','Ned');
$smarty->display('index.tpl');


[ 本帖最后由 04007147 于 2008-6-10 20:56 编辑 ]
^_^,从今天起好好guanshui
还是代码生成工具好,
订好数据库之后,按要求生成
现在把网站从gb2312改成utf-8
PHP开源项目http://www.phpos.org
原帖由 else 于 2008-6-10 17:42 发表
还是代码生成工具好,
订好数据库之后,按要求生成
代码生成工具确实很爽……
^_^,从今天起好好guanshui
代码生成工具

是什么呀?
返回列表