array_keys、array_values两个函数专门执行这一的功能~~~
例如:
<php
$array = array("size" => "XL", "color" => "gold");
print_r(array_values($array));
>
会输出:
Array
(
[0] => XL
[1] => gold
)
再例如:
<php
$array = array(0 => 100, "color" => "red");
print_r(array_keys($array));
$array = array("blue", "red", "green", "blue", "blue");
print_r(array_keys($array, "blue"));
$array = array("color" => array("blue", "red", "green"),
"size" => array("small", "medium", "large"));
print_r(array_keys($array));
>
以上例程会输出:
Array
(
[0] => 0
[1] => color
)
Array
(
[0] => 0
[1] => 3
[2] => 4
)
Array
(
[0] => color
[1] => size
)
array_search
(PHP 4 >= 405, PHP 5, PHP 7)
array_search — 在数组中搜索给定的值,如果成功则返回首个相应的键名
说明
array_search ( mixed $needle , array $haystack [, bool $strict = false ] ) : mixed
大海捞针,在大海(haystack)中搜索针( needle 参数)。
参数
needle
搜索的值。
注意:
如果 needle 是字符串,则比较以区分大小写的方式进行。
haystack
这个数组。
strict
如果可选的第三个参数 strict 为 true,则 array_search() 将在 haystack 中检查完全相同的元素。 这意味着同样严格比较 haystack 里 needle 的 类型,并且对象需是同一个实例。
返回值
如果找到了 needle 则返回它的键,否则返回 false。
如果 needle 在 haystack 中出现不止一次,则返回第一个匹配的键。要返回所有匹配值的键,应该用 array_keys() 加上可选参数 search_value 来代替。
警告
此函数可能返回布尔值 false,但也可能返回等同于 false 的非布尔值。请阅读 布尔类型章节以获取更多信息。应使用 === 运算符来测试此函数的返回值。
更新日志
版本 说明
530 As with all internal PHP functions as of 530, array_search() returns null if invalid parameters are passed to it
这个可以使用for循环加上java的Map集合来做, 代码冗长,扩展性差,不推荐!!
推荐使用 阿里的fastjsonjar包 或者gson来处理 ;因为你提供的数据都是JSON格式的数据
以fastjson为例,参考代码如下
//使用fastjson包import comalibabafastjsonJSON;
import comalibabafastjsonJSONArray;
import comalibabafastjsonJSONObject;
public class Test {
public static void main(String[] args) {
//json字符串
String jsonStr = "[{'a':1,'b':3,'c':5},{'a':1,'b':7,'c':9},{'a':2,'b':2,'c':3},{'a':1,'b':2,'c':3},{'a':2,'b':4,'c':5}]";
JSONArray objects = JSONparseArray(jsonStr);//字符串-->json数组
JSONArray oneAry=new JSONArray();//json数组
JSONArray twoAry=new JSONArray();//json数组
for (int i = 0; i < objectssize(); i++) {
JSONObject obj = (JSONObject) objectsget(i);
int avlue = (int) objget("a");//获取a的值
if(avlue==1){//如果是1,那么存入数组1
oneAryadd(obj);
}else if(avlue==2){
twoAryadd(obj);
}
}
JSONObject one=new JSONObject();
oneput("one", oneAry);//存入到json对象
JSONObject two=new JSONObject();
twoput("two", twoAry);
Systemoutprintln(one);
Systemoutprintln(two);
}
}
$arr = array('name'=>1111,'pass'=>222222);
$key = 'name';
if(array_key_exists($key, $arr))echo $arr[$key];
以上就是关于php 获取数组键名和键值全部的内容,包括:php 获取数组键名和键值、在数组中搜索给定的值,如果成功则返回首个相应的键名、java数组装换。。。如下等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)