2015-11-02 33 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);'。我仍然無法正常工作。 –