静态变量、成员、方法
<无详细内容>
<?php
interface IImage{
function getHeight();
function getWidth();
function getData();
}
class Image_PNG implements IImage{
private $_width,$_height,$_data;
public function __construct($file){
$this->_file=$file;
$this->_parse();
}
private function _parse(){
//完成PNG格式的解析工作
//并填充$_width、$_height和$_data
}
public function getWidth(){
return $this->_width;
}
public function getHeight(){
return $this->_height;
}
public function getData(){
return $this->_data;
}
}
class Image_JPEG implements IImage{
private $_width ,$_height,$_data;
public function __construct($file){
$this->_file=$file;
$this->_parse();
}
private function _parse(){
}
public function getWidth(){
return $this->_width;
}
public function getHeight(){
return $this->_height;
}
public function getData(){
return $this->_data;
}
}
class ImageFactory{
public static function factory($file){
$pathParts=pathinfo($file);
switch(strtolower($pathParts['extension'])){
case 'jpg';
$ret=new Image_JPEG($file);
break;
case 'png';
$ret=new Image_PNG($file);
break;
default;
}
if($ret instanceof IImage){
return $ret;
}
else{
}
}
}
$image=ImageFactory::factory('/path/to/b/bei.jpg');
echo $image->getWidth();
?>
- 上一篇:可加密64编码解码,用于对ID的编码解码
- 下一篇:判断邮件地址是否合法
精彩图集
精彩文章






