首页 > Web开发 > 详细

PHP模拟redis字符串结构

时间:2019-12-26 01:31:05      阅读:76      评论:0      收藏:0      [点我收藏+]
class Sdshrd{
 		public $len;#已经占用的空间长度
 		public $free;#还剩余空间数量
 		public $arr;#存储数据位置
 		public  $defaut=512;
 		public function __construct($value){
 			$this->arr = new SplFixedArray($this->defaut);
 			for($i=0;$i<strlen($value);$i++){
 				$this->arr[$i]=$value[$i];
 			}
 			$this->len=strlen($value);
 			$this->free = $this->defaut-strlen($value);
 		}
 	}

 	class Ticket{
 		private $check=array();
 		private $default=512;
 		public function __construct(){
 			$this->check = new SplFixedArray($this->default);
 		}
 		private function hash($name){
 			$total=0;
 			for($i=0;$i<strlen($name);$i++){
 				$total+=ord($name[$i]);
 			}
 			return $total%$this->default;
 		}
 		public function set($name,$value){
 			$index  = $this->hash($name);
 			$objsds = new Sdshrd($value);
 			$this->check[$index]=$objsds;
 		}

 		public function get($name){
 			$str="";
 			$index = $this->hash($name);
 			$obj = $this->check[$index];
 			foreach ($obj->arr as $key => $value) {
 				$str.=$value;
 			}

 			return $str;
 		}
 	}
 	$objticek = new Ticket();
 	$name="name";
 	$value="lisi";
 	$objticek->set($name,$value);
 	$str = $objticek->get($name);
 	echo $str;

  

PHP模拟redis字符串结构

原文:https://www.cnblogs.com/zh718594493/p/12099593.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!