소스 검색

enables normalizeConfig() to handle irregular plural forms, e.g. factory -> factories

Johannes M. Schmitt 14 년 전
부모
커밋
62d52d8015
1개의 변경된 파일12개의 추가작업 그리고 5개의 파일을 삭제
  1. 12 5
      src/Symfony/Component/DependencyInjection/Extension/Extension.php

+ 12 - 5
src/Symfony/Component/DependencyInjection/Extension/Extension.php

@@ -84,14 +84,21 @@ abstract class Extension implements ExtensionInterface
      *
      * twig.extensions: ['twig.extension.foo', 'twig.extension.bar']
      *
-     * @param array A config array
-     * @param key   The key to normalize
+     * @param array  $config A config array
+     * @param string $key    The key to normalize
+     * @param string $plural The plural form of the key if it is irregular
+     *
+     * @return array
      */
-    public static function normalizeConfig($config, $key)
+    public static function normalizeConfig($config, $key, $plural = null)
     {
+        if (null === $plural) {
+            $plural = $key.'s';
+        }
+
         $values = array();
-        if (isset($config[$key.'s'])) {
-            $values = $config[$key.'s'];
+        if (isset($config[$plural])) {
+            $values = $config[$plural];
         } elseif (isset($config[$key])) {
             if (is_string($config[$key]) || !is_int(key($config[$key]))) {
                 // only one