You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Pimcore 6.9.6迁移至10.6.3遇key/value格式错误求助

解决Pimcore 6.9.6升级到10.6.3时的迁移错误

我正在将Pimcore 6.9.6版本升级至10.6.3版本,已手动完成所有文件夹结构修改,执行命令:COMPOSER_MEMORY_LIMIT=-1 composer update 后,迁移过程中出现以下错误:

[error] Migration Pimcore\Bundle\CoreBundle\Migrations\Version20210107103923 failed during Execution. Error: "Please provide select options as associative array with fields "key" and "value"

In Select.php line 206:
Please provide select options as associative array with fields "key" and "value"

环境配置

  • PHP 8.1版本
  • MySQL 8.0版本
  • Composer 2.5版本

相关代码(vendor目录下Select.php)

public function setOptions(?array $options) {
    if (is_array($options)) {
        $this->options = [];
        
        foreach ($options as $option) { 
            $option = (array)$option;
            
            if (!array_key_exists('key', $option) || !array_key_exists('value', $option)) {
                throw new InvalidArgumentException('Please provide select options as associative array with fields "key" and "value"');
            }
            $this->options[] = $option;
        }
    } else {
        $this->options = null;
    }
    
    return $this;
}

问题分析与解决步骤

这个错误的核心是:迁移Version20210107103923中,传递给Select::setOptions()的选项数组不符合格式要求——方法要求每个选项必须是包含key和value字段的关联数组,但实际传入的是普通键值对数组或其他非法格式。

解决步骤:

  1. 定位迁移文件:找到对应的迁移文件(如果是项目自定义迁移,路径为src/Migrations/Version20210107103923.php;如果是Pimcore核心迁移,在vendor/pimcore/core-bundle/src/Migrations目录下),查找调用setOptions()的代码块。
  2. 修正选项格式:将原有的选项数组转换为要求的结构。
    例如原代码如果是:
    $select->setOptions([
        'draft' => '草稿',
        'published' => '已发布'
    ]);
    
    需修改为:
    $select->setOptions([
        ['key' => 'draft', 'value' => '草稿'],
        ['key' => 'published', 'value' => '已发布']
    ]);
    
  3. 检查依赖兼容性:如果是核心迁移报错,可能是跨版本升级导致的依赖不匹配。执行composer update pimcore/core-bundle --with-all-dependencies,确保核心bundle版本与10.6.3完全匹配。
  4. 遵循逐步升级流程:Pimcore 6到10版本跨度较大,不建议直接跳级。建议按照官方指南先升级到7.x,再依次升级到8.x、9.x,最后到10.6.3,减少兼容性问题。

内容的提问来源于stack exchange,提问作者Thejaswini

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.15 05:16:32