]> granicus.if.org Git - php/commitdiff
quick fix for the "pear info" command
authorTomas V.V.Cox <cox@php.net>
Tue, 18 Dec 2001 08:48:28 +0000 (08:48 +0000)
committerTomas V.V.Cox <cox@php.net>
Tue, 18 Dec 2001 08:48:28 +0000 (08:48 +0000)
pear/scripts/pear.in

index 3782481b0cf5c27dca170f29ab2caa2ae91e5e03..decb0699583ecca8f157931d690e8f71d5856852 100644 (file)
@@ -52,7 +52,6 @@ error_reporting(E_ALL & ~E_NOTICE);
 PEAR::setErrorHandling(PEAR_ERROR_PRINT, "pear: %s\n");
 
 // {{{ config file and option parsing
-
 $options = Console_Getopt::getopt($argv, "c:C:d:D:h?sSqu:v");
 if (PEAR::isError($options)) {
     usage($options);
@@ -172,6 +171,7 @@ if (isset($command_options[$command])) {
 // }}}
 
 switch ($command) {
+
     // {{{ install
 
     case 'install': case 'upgrade': {
@@ -384,15 +384,24 @@ function present_array(&$arr, $keys = null)
     if ($keys === null) {
         $keys = array_keys($arr);
     }
-    $longest_key = max(array_map("strlen", array_keys($arr)));
+    $longest_key = max(array_map("strlen", array_keys($arr))) + 2;
     $format_string = "%{$longest_key}s : %s\n";
     foreach ($keys as $k) {
         if (is_array($arr[$k])) {
-            $v = implode(", ", $arr[$k]);
+            foreach ($arr[$k] as $i => $value) {
+                $x = "$k #$i";
+                foreach(array_keys($value) as $val) {
+                    $cont[] = "$val=" . $value[$val];
+                }
+                $v = implode(", ", $cont);
+                $cont = array();
+                printf($format_string, $x, $v);
+            }
+            continue;
         } else {
             $v = $arr[$k];
+            printf($format_string, $k, $v);
         }
-        printf($format_string, $k, $v);
     }
 }