新的PHP二维数组

时间:2013-12-27 04:03:15

标签: php sorting multidimensional-array

我对这个二维数组有两个问题,如何解决它们的任何帮助,我将不胜感激。

$ data [3] [1]的价值; $数据[3] [2]; [3] [3] $数据;和$ data [3] [4];正在给我0而不是我想做的减法。

<?php
$data = array( 
array("Factor 1",16500,10000,100,100),
array("Factor 2",3000,1209,800,2765),
array("Factor 3 3",0,1000,1000,1000),
array("Factor 4",($data[0][1]-$data[1][1]),($data[0][2]-$data[1][2]),($data[0][3]-$data[1][3]),$data[0][4]-$data[1][4])
); 

echo $data[3][1];
?>

下一个问题是我想用循环打印这个数组,我需要它看起来像这样,

<table width="300" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td width="95">Factor 1</td>
    <td width="15%">16500</td>
    <td width="15%">10000</td>
    <td width="15%">1000</td>
    <td width="15%">100</td>
  </tr>
  <tr>
    <td>Factor 2</td>
    <td width="15%">3000</td>
    <td width="15%">1209</td>
    <td width="15%">800</td>
    <td width="15%">2765</td>
  </tr>
  <tr>
    <td>Factor 3</td>
    <td width="15%">0</td>
    <td width="15%">1000</td>
    <td width="15%">1000</td>
    <td width="15%">1000</td>
  </tr>
  <tr>
    <td>Factor 4</td>
    <td width="15%">???</td>
    <td width="15%">???</td>
    <td width="15%">???</td>
    <td width="15%">???</td>
  </tr>
</table>

提前致谢。

3 个答案:

答案 0 :(得分:1)

这可能会有所帮助。

初始化时无法使用数组值

<?php

$data = array();

$data[] = array("Factor 1",16500,10000,100,100);
$data[] = array("Factor 2",3000,1209,800,2765);
$data[] = array("Factor 3 3",0,1000,1000,1000);
$data[] = array("Factor 4",($data[0][1]-$data[1][1]),($data[0][2]-$data[1][2]),($data[0][3]-$data[1][3]),$data[0][4]-$data[1][4]);

echo $data[3][1];

答案 1 :(得分:1)

经过测试:链接:https://eval.in/83247

$data = array(
        array("Factor 1",16500,10000,100,100),
        array("Factor 2",3000,1209,800,2765),
        array("Factor 3 3",0,1000,1000,1000),
        );
$aa = array("Factor 4",($data[0][1]-$data[1][1]),($data[0][2]-$data[1][2]),($data[0][3]-$data[1][3]),$data[0][4]-$data[1][4]);
array_push($data,$aa);

第二名:

$output = '<table width="300" border="0" cellspacing="0" cellpadding="0">';
foreach ($data as $dat) {
     $output .= ' <tr>
     <td width="95">'.$dat[0].'</td>
     <td width="15%">'.$dat[1].'</td>
     <td width="15%">'.$dat[2].'</td>
     <td width="15%">'.$dat[3].'</td>
     <td width="15%">'.$dat[4].'</td>
     </tr>';
}
$output .= '</table>';
echo $output;

答案 2 :(得分:1)

<?php
$data = array( 
array("Factor 1",16500,10000,100,100),
array("Factor 2",3000,1209,800,2765),
array("Factor 3 3",0,1000,1000,1000),

); 
$data[]=array("Factor 4",($data[0][1]-$data[1][1]),($data[0][2]-$data[1][2]),($data[0][3]-$data[1][3]),$data[0][4]-$data[1][4]);
echo $data[3][1];
?>