code: public function lpushx($value, ...$values)
      {
          if (empty($values)) {
              return $this->redis->lpushx($this->key, $this->serialize($value));
          }
          array_unshift($values, $value);
  
          $this->redis->multi();
          foreach ($values as $insert) {
              $this->redis->lpushx($this->key, $this->serialize($insert));
          }
  
          return $this->redis->exec();
      }
docs: @param mixed $value First value to be inserted.
  @param array<int, mixed> $values,... More values to be inserted.
  
  @return int|int[] The length of the list after each push operation.
  ("?pushx" does not allow variadic inputs, so we use transactions to make it possible)