了解最新动态和产品更新
获取帮助文档和使用指南
其实从错误信息里就看出错误原因了:Array and string offset access syntax with curly braces is deprecated,这是 PHP 7.4 版本的更新,从 7.4 后,只能使用 $value[0] 的方式来获取字符串偏移,$value{0} 已经被弃用。
ThinkPHP 报错的原因是在 thinkphp\library\think\db\Query.php 的 568 行有一段代码用了 $value{0} 的方式:
$seq = (ord($value{0}) % $rule['num']) + 1;解决方法也很简单,将 $value{0} 改成 $value[0] 就行了:
$seq = (ord($value[0]) % $rule['num']) + 1;