cII 框架批量更新报错Message: Undefined index: id Filename: database/DB_query_builder.php

正确代码:修改两处1949行和1955行

protected function _update_batch($table, $values, $index)
	{
		$index_escaped = $this->protect_identifiers($index);

		$ids = array();
		foreach ($values as $key => $val)
		{
			$ids[] = $val[$index_escaped];

			foreach (array_keys($val) as $field)
			{
				if ($field !== $index)
				{
					$final[$field][] = 'WHEN '.$index_escaped.' = '.$val[$index_escaped].' THEN '.$val[$field];
				}
			}
		}

		$cases = '';
		foreach ($final as $k => $v)
		{
			$cases .= $k." = CASE \n"
				.implode("\n", $v)."\n"
				.'ELSE '.$k.' END, ';
		}

		$this->where($index_escaped.' IN('.implode(',', $ids).')', NULL, FALSE);

		return 'UPDATE '.$table.' SET '.substr($cases, 0, -2).$this->_compile_wh('qb_where');
	}

发布了2395 篇原创文章 · 获赞 53 · 访问量 44万+

猜你喜欢

转载自blog.csdn.net/lxw1844912514/article/details/104989002