牛骨文教育服务平台(让学习变的简单)
博文笔记

PHP 获取一维或多维数组某个特定键(数组下标)的所有值

创建时间:2011-03-23 投稿人: 浏览次数:16064
/*
author: yangyu@sina.cn
description: 根据某一特定键(下标)取出一维或多维数组的所有值;不用循环的理由是考虑大数组的效率,把数组序列化,然后根据序列化结构的特点提取需要的字符串
*/
function array_get_by_key(array $array, $string){
if (!trim($string)) return false;
preg_match_all("/"$string";w{1}:(?:d+:|)(.*?);/", serialize($array), $res);
return $res[1];
}


$r = array("id"=> 1, "s"=> 23, "a" => array("s" => 123, array(1, 2, "s" => "asdasdgsadggsadg")));
echo "<pre>";
print_r (array_get_by_key($r, "s"));
/*
result:
Array
(
[0] => 23
[1] => 123
[2] => "asdasdgsadggsadg"
)
*/
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。