base.interface.php 905 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. <?php
  2. interface Base extends JsonSerializable{
  3. private $data;
  4. public function __construct(){
  5. $this->data = array();
  6. // Constructor
  7. }
  8. public function __clone(){
  9. // Clone handler
  10. }
  11. public function __destruct(){
  12. // Destroy handler
  13. $this->data = array();
  14. }
  15. public function __toString(){
  16. $name = get_class($this);
  17. if(!$name){
  18. $name = "Object";
  19. }
  20. return "[".$name."]";
  21. }
  22. public function __invoke($res,$args){
  23. // Invoke handler
  24. }
  25. public function jsonSerialize(){
  26. return $this;
  27. }
  28. public function __get($name){
  29. if(isset($this->data[$name])){
  30. return $this->data[$name];
  31. }
  32. }
  33. public function __set($name,$value){
  34. if(isset($this->data[$name])){
  35. $this->data[$name] = $value;
  36. }
  37. }
  38. public function __isset($name){
  39. return isset($this->data[$name]);
  40. }
  41. public function __unset($name){
  42. unset($this->data[$name]);
  43. }
  44. }
  45. ?>