在生产服使用webman助手函数的时候遇到的问题

shaonian820

在助手函数文件里定义了base58_encode函数
截图

然后当我正式服php start.php start -d 运行一段时候后 执行这个函数会出现报错字符串偏移 Illegal string offset '56.000000000000000000' {"exception":"ErrorException: Illegal string offset '56.000000000000000000' in /data/www/tak-main/app/functions.php:173的错误

然后我这时候重启webman以后 使用一样的参数和请求 却又直接成功了,在本地开发环境未遇到过这个错误 每次出现这个问题都是需要重启webman后又好了 是我的使用方式有问题吗?

未重启之前报错截图:
截图

未修改代码直接重启webman以后调用截图:
截图

2398 1 0
1个回答

walkor

应该是你这个函数写的有问题。字符串下标必须是整数或代表整数的字符串。在使用字符串下标的时候转换成整数试下。

$string = '.......';
// 非整数下标是非法的用法
$string['56.000000000000000000'];
// 正确用法
$string[56];
  • shaonian820 2021-01-08

    这个有点坑 确实是数据类型的原因 多谢大佬指正

年代过于久远,无法发表回答
🔝