站长资讯网
最全最丰富的资讯网站

分享几个有意思的数组方法

使用传递的数组递归替换第一个数组的元素 array_replace_recursive

$base = array('citrus' => array( "orange") , 'berries' => array("blackberry", "raspberry"), ); $replacements = array('citrus' => array('pineapple'), 'berries' => array('blueberry')); $basket = array_replace_recursive($base, $replacements);

分享几个有意思的数组方法

带索引检查计算数组的交集,用回调函数比较索引 array_intersect_uassoc

$array1 = array("a" => "green", "b" => "brown", "c" => "blue", "red"); $array2 = array("a" => "GREEN", "B" => "brown", "yellow", "red"); print_r(array_intersect_uassoc($array1, $array2, "strcasecmp"));

分享几个有意思的数组方法

递归地合并一个或多个数组 array_merge_recursive

$ar1 = array("color" => array("favorite" => "red"), 5); $ar2 = array(10, "color" => array("favorite" => "green", "blue")); $result = array_merge_recursive($ar1, $ar2);

分享几个有意思的数组方法

使用传递的数组递归替换第一个数组的元素 array_replace_recursive

$base = array('citrus' => array( "orange") , 'berries' => array("blackberry", "raspberry"), ); $replacements = array('citrus' => array('pineapple'), 'berries' => array('blueberry')); $basket = array_replace_recursive($base, $replacements); print_r($basket);

将一个线性数组转换为一个树,或者多维数组

function array_stack (&$a, $p = '@parent', $c = '@children')     {       $l = $t = array();       foreach ($a AS $key => $val):         if (!$val[$p]) $t[$key] =& $l[$key];         else $l[$val[$p]][$c][$key] =& $l[$key];         $l[$key] = (array)$l[$key] + $val;       endforeach;       return $a = array('tree' => $t, 'leaf' => $l);     }     $node = array();     $node[1] = array('@parent' => 0, 'title' => 'I am node 1.');     $node[2] = array('@parent' => 1, 'title' => 'I am node 2.');     $node[3] = array('@parent' => 2, 'title' => 'I am node 3.');     $node[4] = array('@parent' => 1, 'title' => 'I am node 4.');     $node[5] = array('@parent' => 4, 'title' => 'I am node 5.');     print_r(array_stack($node));

赞(0)
分享到: 更多 (0)
网站地图   沪ICP备18035694号-2    沪公网安备31011702889846号