2015-11-02 62 views
0

这与阵列以显示多维输出的如何与2阵列显示多维度和乘以

<html> 
    <head> 
     <meta charset="UTF-8"> 
     <title></title> 
    </head> 
    <body> 
     <?php 
     $numberArray = array(
      array(1, 2, 3, 4, 7, 6), 
      array(2, 3, 1, 0, 5) 
     ); 

     function printTable($numberArray) { 
      // Placeholder 
      $result = []; 

      // Setup the multiplication 
      foreach ($numberArray[1] as $key1 => $value1) { 
       $tmp = array($value1); // add index y-axis 
       foreach ($numberArray[0] as $key0 => $value0) { 
        $tmp[] = $value0 * $value1; 
       } 
       $result[] = $tmp; 
      } 

      // Add index the x-axis 
      array_unshift($result, array_merge(array(" "), $numberArray[0])); 

      // Loop through the $result array and display the table 
      echo "<table border='1'>"; 
      foreach ($result as $key => $value) { 
       echo "<tr>"; 
       foreach ($value as $k => $v) { 
        if ($k == 0 || $key == 0) { 
         echo sprintf("<td><b>%s</b></td>", $v); 
         continue; 
        } 
        echo "<td>$v</td>"; 
       } 
       echo "</tr>"; 
      } 
      echo "</table>"; 
     } 

     ?> 

    </body> 
</html> 

实施例的代码:https://gyazo.com/2a0a5c07ac75f285f6b8a4631d5b723c

  1. 如何显示与阵列的多维而答案里面的数字会相乘。
+0

“numbesr之间正片叠底”?咦? –

+0

@Marc B该例子https://gyazo.com/2a0a5c07ac75f285f6b8a4631d5b723c –

回答

1

望着链接到您提供的屏幕截图,或许此设置可以帮助您:

<?php 

$numberArray = array(
    array(1, 2, 3, 4, 7, 6), 
    array(2, 3, 1, 0, 5) 
); 

function printTable($numberArray) 
{ 
    // Placeholder 
    $result = []; 

    // Setup the multiplication 
    foreach ($numberArray[1] as $key1 => $value1) { 
     $tmp = array($value1); // add index y-axis 
     foreach ($numberArray[0] as $key0 => $value0) { 
      $tmp[] = $value0 * $value1; 
     } 
     $result[] = $tmp; 
    } 

    // Add index the x-axis 
    array_unshift($result, array_merge(array(" "), $numberArray[0])); 

    // Loop through the $result array and display the table 
    echo "<table border='2'>"; 
    foreach ($result as $key => $value) { 
     echo "<tr>"; 
     foreach ($value as $k => $v) { 
      if ($k == 0 || $key == 0) { 
       echo sprintf("<td><b>%s</b></td>", $v); 
       continue; 
      } 
      echo "<td>$v</td>"; 
     } 
     echo "</tr>"; 
    } 
    echo "</table>"; 
} 
+0

我有一些部分不是太懂'回声的sprintf( “​​%S”,$ V);'。我仍然无法正常工作。 –