浏览代码

[DependencyInjection] fixed Extension conversion from XML to PHP when the same tag is used more than once

Fabien Potencier 15 年之前
父节点
当前提交
392ab46952
共有 1 个文件被更改,包括 13 次插入1 次删除
  1. 13 1
      src/Symfony/Components/DependencyInjection/Loader/XmlFileLoader.php

+ 13 - 1
src/Symfony/Components/DependencyInjection/Loader/XmlFileLoader.php

@@ -382,7 +382,19 @@ EOF
       }
       elseif (!$node instanceof \DOMComment)
       {
-        $config[$node->localName] = static::convertDomElementToArray($node);
+        if (isset($config[$node->localName]))
+        {
+          if (!is_array($config[$node->localName]))
+          {
+            $config[$node->localName] = array($config[$node->localName]);
+          }
+          $config[$node->localName][] = static::convertDomElementToArray($node);
+        }
+        else
+        {
+          $config[$node->localName] = static::convertDomElementToArray($node);
+        }
+
         $empty = false;
       }
     }