Explorar o código

Avoid allocating an iterator to traverse the arguments list of a command.

Daniele Alessandri %!s(int64=14) %!d(string=hai) anos
pai
achega
5a6a48fa17
Modificáronse 1 ficheiros con 2 adicións e 1 borrados
  1. 2 1
      lib/Predis.php

+ 2 - 1
lib/Predis.php

@@ -529,7 +529,8 @@ abstract class MultiBulkCommand extends Command {
         $reqlen  = $argsc + 1;
 
         $buffer = "*{$reqlen}{$newline}\${$cmdlen}{$newline}{$command}{$newline}";
-        foreach ($cmd_args as $argument) {
+        for ($i = 0; $i < $reqlen - 1; $i++) {
+            $argument = $cmd_args[$i];
             $arglen  = strlen($argument);
             $buffer .= "\${$arglen}{$newline}{$argument}{$newline}";
         }