code: protected static function compareString($known, $input)
      {
          // 强制转换为字符串类型
          $known = (string) $known;
          $input = (string) $input;
          if (function_exists('hash_equals')) {
              return hash_equals($known, $input);
          }
          // 字符串长度不相等可直接返回
          $length = strlen($known);
          if ($length !== strlen($input)) {
              return false;
          }
          // 逐位比较字符串
          // 遇到字符不一致, 并不是直接返回, 这样就无法猜解字符串在哪里出错
          $result = 0;
          for ($i = 0; $i < $length; $i++) {
              $result |= (ord($known[$i]) ^ ord($input[$i]));
          }
          return $result === 0;
      }
docs: 比较字符串是否相等
  
  @param string $known 参考字符串
  @param string $input 待测试字符串
  
  @return boolean