Array
(
[0] => 36
[1] => 00868
[2] => 123456
[3] => KAETC56
[4] => 2011-07-11 14:47:44
)
Array
(
[0] => 37
[1] => 00868
[2] => 123456
[3] => KAETC56
[4] => 2011-07-11 14:47:49
)像这样的多个一维数组,我要取得每个数组的值,是不是要把数组转化为二维数组?怎么求某项值在数组中的个数?图例为[2]这项。
(
[0] => 36
[1] => 00868
[2] => 123456
[3] => KAETC56
[4] => 2011-07-11 14:47:44
)
Array
(
[0] => 37
[1] => 00868
[2] => 123456
[3] => KAETC56
[4] => 2011-07-11 14:47:49
)像这样的多个一维数组,我要取得每个数组的值,是不是要把数组转化为二维数组?怎么求某项值在数组中的个数?图例为[2]这项。
Array
(
[0] => 36
[1] => 00868
[2] => 123456
[3] => KAETC56
[4] => 2011-07-11 14:47:44
)
Array
(
[0] => 37
[1] => 00868
[2] => 123456
[3] => KAETC56
[4] => 2011-07-11 14:47:49
)
放到一个二维数组中,像这样:
Array(
Array
(
[0] => 36
[1] => 00868
[2] => 123456
[3] => KAETC56
[4] => 2011-07-11 14:47:44
)
Array
(
[0] => 37
[1] => 00868
[2] => 123456
[3] => KAETC56
[4] => 2011-07-11 14:47:49
)
)
$a = array("a");
$b = array("b");
$c = array();
array_push($c,$a,$b);
print_r($c);是不是要这样的效果?
array_count_values如果没有记错的话 是不能算二维数组的function array_count_values_multidim($a,$out=false) {
if ($out===false) $out=array();
if (is_array($a)) {
foreach($a as $e)
$out=array_count_values_multidim($e,$out);
}
else {
if (array_key_exists($a,$out))
$out[$a]++;
else
$out[$a]=1;
}
return $out;
} 手册上的一个例子 可以算二维
0 => 36,
1 => '00868',
2 => '123456',
3 => 'KAETC56',
4 => '2011-07-11 14:47:44',
);
$b = array(
0 => 37,
1 => '00868',
2 => '123456',
3 => 'KAETC56',
4 => '2011-07-11 14:47:49',
);
$k = 2;
$t = $a[$k];
$n = 0;
foreach(array($a, $b) as $v) {
if($v[$k] == $t) $n++;
}
echo $n;//2
求N的结果是正确的,但是数组是从循环中获得的。while($rows = mysql_fetch_array($result,MYSQL_NUM))
{
print_r($rows);
}结果如下:
Array
(
[0] => 36
[1] => 00868
[2] => 110711
[3] => KAETC56-600NC1161656600N31036 KA62A0001
[4] => 2011-07-11 14:47:44
)
Array
(
[0] => 37
[1] => 00868
[2] => 110711
[3] => KAETC56-600NC1161656600N31036 KA62A0001
[4] => 2011-07-11 14:47:49
)如果用array()函数结果是这样:Array
(
[0] => Array
(
[0] => 36
[1] => 00868
[2] => 110711
[3] => KAETC56-600NC1161656600N31036 KA62A0001
[4] => 2011-07-11 14:47:44
))
Array
(
[0] => Array
(
[0] => 37
[1] => 00868
[2] => 110711
[3] => KAETC56-600NC1161656600N31036 KA62A0001
[4] => 2011-07-11 14:47:49
))
你的数据是从数据库中取出的,在读取的过程中想统计下标2元素的值出现的次数while($row = mysql_fetch_array($rs)) {
$cnt[$row[2]]++;
}
print_r($cnt);
{
$row[$rows[2]]++;
$row[$rows[3]]++;
print_r($row);
}得到结果:
Array
(
[110711] => 1
[KAETC56-600NC1161656600N31036 KA62A0001] => 1
)
Array
(
[110711] => 2
[KAETC56-600NC1161656600N31036 KA62A0001] => 2
)
{
echo $key.'<br />';//这里只能计算出所有循环key的值。
}
while($rows = mysql_fetch_array($result,MYSQL_NUM))
{
print_r($rows);
}
结果:
Array
(
[0] => 36
[1] => 00868
[2] => 110711
[3] => KAETC56-600NC1161656600N31036 KA62A0001
[4] => 2011-07-11 14:47:44
)
Array
(
[0] => 37
[1] => 00868
[2] => 110711
[3] => KAETC56-600NC1161656600N31036 KA62A0001
[4] => 2011-07-11 14:47:49
)得到这样的结果:
Array
(
[0] => Array
(
[0] => 36
[1] => 00868
[2] => 123456
[3] => KAETC56
[4] => 2011-07-11 14:47:44
) [1] => Array
(
[0] => 37
[1] => 00868
[2] => 123456
[3] => KAETC56
[4] => 2011-07-11 14:47:49
))