![](/img/trans.png)
[英]PHP: error echoing a bidimentional array -> Array to string conversion
[英]bidimentional array is not printing values
需要有关此数组的帮助,所有内容都可以正常工作,但最后一行不会在$data[5][1] + $data[1][2] - $data[2][2]
,
$data = array(
array("Concepto","Enero","Febrero","Marzo","Abril"),
array("Ingresos",100, 100, 100, 100),
array("Egresos",200, 200, 200, 200),
array("Deudores",300, 300, 300, 300),
);
$aa = array("Saldo",($data[1][1]-$data[2][1]),($data[1][2]-$data[2][2]),($data[1][3]-$data[2][3]),$data[1][4]-$data[2][4]);
array_push($data,$aa);
$bb = array("Saldo Acumulado",(5000)+($data[1][1])-$data[2][1],
$data[5][1] + $data[1][2] - $data[2][2],
"3",
"4");
array_push($data,$bb);
$tblCuatrimestre1 = '<table width="100%" border="0" cellspacing="0" cellpadding="0">';
foreach($data as $dat){
$tblCuatrimestre1 .= ' <tr>
<td width="20%">'.$dat[0].'</td>
<td width="20%">'.$dat[1].'</td>
<td width="20%">'.$dat[2].'</td>
<td width="20%">'.$dat[3].'</td>
<td width="20%">'.$dat[4].'</td>
<td width="20%">'.$dat[5].'</td>
</tr>';
}
$tblCuatrimestre1 .= '</table>';
echo $tblCuatrimestre1;
接下来的问题是:
$data = array(
array("Concepto","Enero","Febrero","Marzo","Abril"),
array("Ingresos",100, 100, 100, 100),
array("Egresos",200, 200, 200, 200),
array("Deudores",300, 300, 300, 300),
);
$aa = array("Saldo",($data[1][1]-$data[2][1]),($data[1][2]-$data[2][2]),($data[1][3]-$data[2][3]),$data[1][4]-$data[2][4]);
array_push($data,$aa);
现在,您的$data
数组具有5个子数组,当您调用$data[5][1]
将出错,因为$data[4]
将是最后一个子数组。 可能你需要
$bb = array("Saldo Acumulado",(5000)+($data[1][1])-$data[2][1],
$data[4][1] + $data[1][2] - $data[2][2],
"3",
"4");
array_push($data,$bb) ;
给定注释,很明显您在数学上出错了。 但是在我开始之前..通常数组是零索引的..意味着第一项从零开始,然后从零开始计数。 因此,给定数组中没有这样的元素,您的$data[5][1] + $data[1][2] - $data[2][2]
会出错。
其次,您的主要问题...
数学完成
$data[4][1] + $data[1][2] - $data[2][2]
// ^ correct digit here by the way
给定数组的值,该值永远不会等于您声明的值。 但是,鉴于您的问题,我将假设您实际上是在谈论以下数学内容:
(5000)+($data[1][1])-$data[2][1]
您说上述应该等于4800,但是从数学上讲,这是不可能的。 稍后,在注释中,您声明数学以数字4900 ..开头,因此错误变得很明显。 将5000更改为4900,它将根据您的设计工作。 当然,鉴于没有5索引(它将是4,因此我在这里重复一下),您还应该修复如何访问数组。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.