| [ Index ] |
PHP Cross Reference of Akelos Framework |
[Summary view] [Print] [Text view]
1 <?php 2 require_once (AK_LIB_DIR.DS.'AkObject.php'); 3 4 class AkType extends AkObject 5 { 6 var $value; 7 function __construct($value) 8 { 9 $this->value = $value; 10 require_once ('AkInflector.php'); 11 } 12 function toString() 13 { 14 return $this->value.''; 15 } 16 function getValue() 17 { 18 return $this->value; 19 } 20 function inspect() 21 { 22 return var_export($this->value, true); 23 } 24 25 function blank() 26 { 27 return empty($this->value); 28 } 29 } 30 require_once (AK_LIB_DIR.DS.'AkType'.DS.'AkNumber.php'); 31 require_once (AK_LIB_DIR.DS.'AkType'.DS.'AkString.php'); 32 require_once (AK_LIB_DIR.DS.'AkType'.DS.'AkTime.php'); 33 require_once (AK_LIB_DIR.DS.'AkType'.DS.'AkArray.php'); 34 /**require_once(AK_LIB_DIR.DS.'AkType'.DS.'AkDate.php'); 35 */ 36 37 function &AkT($param,$command=null) 38 { 39 $type = gettype($param); 40 switch ($type) { 41 case 'array': 42 $obj = &new AkArray($param); 43 break; 44 case 'integer': 45 $obj = &new AkNumber($param); 46 break; 47 case 'string': 48 default: 49 $obj = &new AkString($param); 50 break; 51 } 52 if ($command!=null) { 53 $items = preg_split('/\./',$command); 54 $prepend = ''; 55 while($item = array_shift($items)) { 56 $item = $prepend.$item; 57 $args = array(); 58 preg_match('/([a-zA-Z_])+(\(.*?\)){0,1}/',$item,$matches); 59 if (isset($matches[2])) { 60 $item = str_replace($matches[2],'',$item); 61 $args = preg_split('/\s*,\s*/',trim($matches[2],'()')); 62 } 63 if (method_exists($obj,$item)) { 64 65 66 if (empty($args)) { 67 $obj = $obj->$item(); 68 } else { 69 $obj = call_user_func_array(array(&$obj,$item),$args); 70 } 71 $prepend = ''; 72 } else { 73 $prepend = $item.$prepend; 74 } 75 76 } 77 if (is_object($obj) && method_exists($obj,'getValue')) { 78 $obj = $obj->getValue(); 79 } 80 } 81 return $obj; 82 } 83 84 85 86 ?>
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
| Generated: Mon Oct 27 12:43:49 2008 | Cross-referenced by PHPXref 0.6 |