Doctrine 1.2中使用YAML的人类可读阵列/对象数据夹具

时间:2012-11-08 11:36:11

标签: php doctrine yaml fixtures doctrine-1.2

是否可以使用具有人类可读,未序列化的php数组的灯具,而无需序列化它们?

目前我序列化数据,但很难阅读和编辑。如果我转储数据,我会收到可读数据,但似乎无法导入。

相关字段的架构:

    template_data: 
      type: object
      default: null

这是我目前在数据夹具YAML文件中的条目。它是序列化的(PHP),在将数据加载到数据库时工作正常:

BannerCampaign:
  BannerCampaign_1:
    name: Frontpage
    description: Frontpage
    template_data: a:1:{s:7:"banners";a:3:{i:0;a:4:{s:6:"target";s:0:"";s:3:"url";s:32:"/url/123";s:10:"image_path";s:11:"front_1.jpg";s:3:"alt";s:0:"";}i:1;a:4:{s:6:"target";s:0:"";s:3:"url";s:39:"/url/456";s:10:"image_path";s:11:"front_2.jpg";s:3:"alt";s:0:"";}i:2;a:4:{s:6:"target";s:0:"";s:3:"url";s:18:"/url/789";s:10:"image_path";s:11:"front_3.jpg";s:3:"alt";s:0:"";}}}

这是我将数据库转储到夹具文件时得到的那种夹具(doctrine.php dump-data

BannerCampaign:
  BannerCampaign_1:
    name: Frontpage
    description: Frontpage
    template_data:
      banners:
        -
          target: ''
          url: /url/123
          image_path: front_1.jpg
          alt: ''
        -
          target: ''
          url: /url/456
          image_path: front_2.jpg
          alt: ''
        -
          target: ''
          url: /url/789
          image_path: front_3.jpg
          alt: ''

后一个YAML更具可读性,但我似乎无法在没有以下错误的情况下将灯具导入数据库:

PHP Warning:  unserialize() expects parameter 1 to be string, array given in

任何想法,我“希望”是否可以实现,实际上是可以实现的吗?

0 个答案:

没有答案