不支持的数据表达式——thinkphp5.0写入数据库问题

不支持的数据表达式:/api/user/register

if ('__TABLE__' == $table) {
$table = $this->query->getTable();
}
if (isset($options['alias'][$table])) {
$table = $options['alias'][$table];
}
}
if ($strict && !preg_match('/^[\w\.\*]+$/', $key)) {
throw new Exception('not support data:' . $key);
}
if ('*' != $key && ($strict || !preg_match('/[,\'\"\*\(\)`.\s]/', $key))) {
$key = '`' . $key . '`';
}
if (isset($table)) {
if (strpos($table, '.')) {
$table = str_replace('.', '`.`', $table);
}
$key = '`' . $table . '`.' . $key;

前两天用thinkphp5.0来写代码的时候也是出了很多的问题,比如当我PHP版本调到7.3的时候发现它用的一些函数在高版本的PHP里面已经废除了,就出现了报错的问题,我换了5.6版本的php,第一天没问题,第二天又因为PHP版本的原因出现了一些问题,干脆直接把PHP版本换到thinkphp5.0要求的最低版本5.4,然后问题解决了。

今天在写新的后台API在写到需要插入数据到数据库的时候遇到了这个问题,报错是不支持的数据表达式,我直接把传过来的post数据打印,然后发现了一个特别的数据 /api/user/register 它是一个空字符串,根据我的观察它好像是一个路径数据,我直接用unset把它干掉

unset($data[“/api/user/register”]);
$data 是接收到的post数组
 
干掉直接果然是解决了这个问题
 
© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片