<?php namespace Core\init; use Core\BeanFactory; use Core\lib\PHPRedisPool; use phpDocumentor\Reflection\Types\Array_; use Core\annotations\Bean; /** * @Bean() * Class RedisHelper * @method static string get(string $key) * @method static bool set(string $key,string $value) * @method static bool setex(string $key,int $ttl,string $value) * @method static array hgetall(string $key) * @method static bool hmset(string $key,array $keyandvalues) * @method static bool zAdd(string $key, int $score, string $member) * @method static mixed eval($script, $args=array(),$numberKeys=0) */ class RedisHelper{ public static function __callStatic($name, $arguments) { /** @var $pool PHPRedisPool */ $pool=BeanFactory::getBean(PHPRedisPool::class); $redis_obj=$pool->getConnection(); try{ if(!$redis_obj) { return false; } return $redis_obj->redis->$name(...$arguments); }catch (\Exception $exception){ return $exception->getMessage(); }finally{ if($redis_obj) $pool->close($redis_obj); } } }