`

重温PHP

php 
阅读更多
有几个月,没有写php了。有的东西开始有点模糊了。
这两天开始把PHP重温下

1.oop模式
这里有两个点
有个是抽象类和接口,他们区别大于。抽象类可以存有函数体的方法,而接口不可以。
abstract class Top
{
   public function getOne();
   public function getTwo();
   public function getThree()
   {
      return 300;
   }
}
class Top_extend extends Top
{
   function getOne()
   {
      return 100;
   }
}
//接口
class interface TopInterface
{
   public function getData();
}
class top_interface implements TopInterface
{
}

//$t = new Top(); //抽象类不能被直接实例化
$t = new Top_extend(); //可以通过实例子类



2.异常处理
exception.php 异常基类


//异常基类
class LogException extends Exception
{
	var $logfile_dir = 'exception.log';

	public function __construct($msg=null,$code=0,$file='')
	{
		if($file == '')
		{
			$file = $logfile_dir;
		}
		$this->saveLog($file);
		parent::__construct($msg,$code);
	}

	//记录日志
	protected function saveLog($file)
	{
		file_put_contents($file,$this->__toString(),FILE_APPEND);
	}
}

<?php
//数据库错误类
include_once('LogException.php');
class DataBaseException extends LogException
{
	protected $databaseErrorMessage;

	public function __construct($msg='',$code = 0)
	{	
		$this->databaseErrorMessage = $msg;
		parent::__construct($msg,$code);
	}

	public function getMsg()
	{
		return $this->databaseErrorMessage;
	}
}
?>

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics