version 1.1, 2010/02/28 20:17:33
|
version 1.2, 2010/03/20 17:23:42
|
Line 1
|
Line 1
|
<?php |
<?php |
require_once(dirname(__FILE__)."/DbField.class.php"); |
require_once(dirname(__FILE__)."/DbField.class.php"); |
|
require_once(dirname(__FILE__)."/DbFactory.class.php"); |
|
|
class DbFieldFactory { |
class DbFieldFactory extends DbFactory { |
private $field; |
private $field; |
private $value; |
private $value; |
|
protected $prefix = 'DbField'; |
|
|
public function getField($field, $value, $number = false) { |
public function getField($field, $value, $number = false) { |
$this->field = $field; |
$this->field = $field; |
Line 11 class DbFieldFactory {
|
Line 13 class DbFieldFactory {
|
if ($this->classExists()) { |
if ($this->classExists()) { |
$ref = new ReflectionClass($this->getClassName()); |
$ref = new ReflectionClass($this->getClassName()); |
$result = $ref->newInstance($field, $value, $number); |
$result = $ref->newInstance($field, $value, $number); |
} else { |
} else { |
$result = new DbField($field, $value, $number); |
$result = new DbField($field, $value, $number); |
} |
} |
return $result; |
return $result; |
} |
} |
|
|
private function getClassName() { |
protected function getClassName() { |
return 'DbField'.$this->field; |
return 'DbField'.$this->field; |
} |
} |
|
|
private function getFileName() { |
|
return dirname(__FILE__)."/DbField/".$this->getClassName().".class.php"; |
|
} |
|
|
|
private function classExists() { |
|
if ( $this->fileExists() ) { |
|
require_once($this->getFileName()); |
|
} |
|
return class_exists($this->getClassName()); |
|
} |
|
|
|
private function fileExists() { |
|
return file_exists($this->getFileName()); |
|
} |
|
|
|
} |
} |