‘壹’ php如何取出二维数组内的值
如果你设计用数组存储,就直接
$arr1['LoginResult']['error'] = "此个人编码不存在";
json存储就{"LoginResult":{"error":"此个人编码不存在"}}
调用方式是$json->LoginResult->error
‘贰’ php 怎么随机抽取二维数组里的几个数组
//你的数组少写了个逗号
$data=array(
array(
"price"=>"6874","air"=>"国泰"
),
array(
"price"=>"4726","air"=>"大韩航空"
),
array(
"price"=>"6569","air"=>"国泰航空"
),
array(
"price"=>"6569","air"=>"卡塔尔航空"
),
array(
"price"=>"3380","air"=>"美国航空"
),
array(
"price"=>"4200","air"=>"泰国航空"
)
);
//随机选择出两个元素
$temp=array_rand($data,2);
//重组数组
foreach($tempas$val){
$data_last[]=$data[$val];
}
print_R($data_last);
‘叁’ php二维数组处理,并重置索引。。
直接用 array_flip 或者 array_unique 是不行的,你这没有键名,必须要自己写函数
<?php
functionunique_arr($array2D,$stkeep=false,$ndformat=true)
{
//判断是否保留一级数组键(一级数组键可以为非数字)
if($stkeep)$stArr=array_keys($array2D);
//判断是否保留二级数组键(所有二级数组键必须相同)
if($ndformat)$ndArr=array_keys(end($array2D));
//降维,也可以用implode,将一维数组转换为用逗号连接的字符串
foreach($array2Das$v){
$v=join(",",$v);
$temp[]=$v;
}
//去掉重复的字符串,也就是重复的一维数组
$temp=array_unique($temp);
//再将拆开的数组重新组装
foreach($tempas$k=>$v)
{
if($stkeep)$k=$stArr[$k];
if($ndformat)
{
$tempArr=explode(",",$v);
foreach($tempArras$ndkey=>$ndval)$output[$k][$ndArr[$ndkey]]=$ndval;
}
else$output[$k]=explode(",",$v);
}
return$output;
}
$arr=array(
0=>array
(
0=>1,
1=>2
),
1=>array
(
0=>1,
1=>2
),
2=>array
(
0=>2,
1=>3
),
3=>array
(
0=>2,
1=>3
),
4=>array
(
0=>3,
1=>4
),
5=>array
(
0=>3,
1=>4
),
);
var_mp(array_values(unique_arr($arr)));
去重函数可参考: http://www.cnblogs.com/hakuci/archive/2012/05/09/2492659.html
.
‘肆’ php判断二维数组中是否含有某个值
可以使用遍历二维数组的办法判断,还可以统计出现的次数或者输出key值。代码如下:
<?php
$d=100;
$tot=0;
$cars=array
(
array("Volvo",100,96),
array("BMW",100,59),
array("Toyota",110,100)
);
foreach($carsas$v)
{
if(is_array($v))
{
foreach($vas$a)
{
if($a==$d)
$tot++;
}
}
else
{
if($v==$d)
$tot++;
}
}
echo($tot);
?>
‘伍’ PHP从入门到精通—数组—数组的概念、数组的定义、数组的操作、数组的常见函数、二维数组
PHP数组相关知识点:
一、数组的概念
二、数组的定义
三、数组的操作
四、数组的常见函数
五、二维数组