瀏覽代碼

Remove a few hundred/thousand array_merge calls

Nils Adermann 9 年之前
父節點
當前提交
e88df7429f
共有 1 個文件被更改,包括 3 次插入2 次删除
  1. 3 2
      src/Composer/Package/Version/VersionParser.php

+ 3 - 2
src/Composer/Package/Version/VersionParser.php

@@ -257,10 +257,11 @@ class VersionParser
         foreach ($orConstraints as $constraints) {
             $andConstraints = preg_split('{(?<!^|as|[=>< ,]) *(?<!-)[, ](?!-) *(?!,|as|$)}', $constraints);
             if (count($andConstraints) > 1) {
-                $constraintObjects = array();
+                $constraintObjects = array(array());
                 foreach ($andConstraints as $constraint) {
-                    $constraintObjects = array_merge($constraintObjects, $this->parseConstraint($constraint));
+                    $constraintObjects[] = $this->parseConstraint($constraint);
                 }
+                $constraintObjects = call_user_func_array('array_merge', $constraintObjects);
             } else {
                 $constraintObjects = $this->parseConstraint($andConstraints[0]);
             }