数组操作
程序员文章站
2024-02-14 21:20:22
...
本帖最后由 lazygc520 于 2013-06-25 18:14:38 编辑 $sql = "select * from table where cloumn ...";
$result = mysql_query($sql);
$var = array();
while($row = mysql_fetch_array($result,MYSQL_NUM))
{
$var[] = $row;
}
foreach($var as $v)
{
foreach($v as $key=>$value)
{
echo $value.'
';
}
}
显示结果如下:
4890//value1;
1635
624 //value2;
4890//value3;
请问怎么改能让结果变成:
4890
2249//1635+624;
4890
不能用这个方式计算,结果不对:
foreach($var as $v)
{
foreach($v as $key=>$value)
{
$total += $v[$value];
echo $total;
}
}
结果如下:
4890
7139//4890+2249
12029//4890+2249+4890
求解决方法。
非常感谢,问题已解决。
$result = mysql_query($sql);
$var = array();
while($row = mysql_fetch_array($result,MYSQL_NUM))
{
$var[] = $row;
}
foreach($var as $v)
{
foreach($v as $key=>$value)
{
echo $value.'
';
}
}
显示结果如下:
4890//value1;
1635
624 //value2;
4890//value3;
请问怎么改能让结果变成:
4890
2249//1635+624;
4890
不能用这个方式计算,结果不对:
foreach($var as $v)
{
foreach($v as $key=>$value)
{
$total += $v[$value];
echo $total;
}
}
结果如下:
4890
7139//4890+2249
12029//4890+2249+4890
求解决方法。
回复讨论(解决方案)
print_r($var); 是什么结果啊,或者从sql里面构造看可以不。
print_r($var); 是什么结果啊,或者从sql里面构造看可以不。
array([0]=>array([0]=>4890))
array([0]=>array([0]=>1635) [1]=>array([0]=>624))
array([0]=>array([0]=>4890))
$var 不是那个数组吧,贴错了吧?
$var 不是那个数组吧,贴错了吧?
没有啊,就是个二维数组啊。整个外面还有一个for循环我没贴出来。
while($row = mysql_fetch_array($result,MYSQL_NUM))
{
$var[] = $row;
}
print_r($var);
while($row = mysql_fetch_array($result,MYSQL_NUM))
{
$var[] = $row;
}
print_r($var);
那这样吧,就取一条记录:
array([0]=>array([0]=>1635) [1]=>array([0]=>624))
结果是这样的。
这个意思?
$ar = array( array( 1635 ), array( 624 ),);$res = array();foreach($ar as $item) { foreach($item as $v) $res[] = $v;}echo array_sum($res) . '//' . join('+', $res);2259//1635+624
你先完整打印出你的结果集 var_dump($var)
这个意思?
$ar = array( array( 1635 ), array( 624 ),);$res = array();foreach($ar as $item) { foreach($item as $v) $res[] = $v;}echo array_sum($res) . '//' . join('+', $res);2259//1635+624
非常感谢,问题已解决。