数组中的PHP条带计数值

数组中的PHP条带计数值,php,arrays,multidimensional-array,Php,Arrays,Multidimensional Array,我有一个ldap请求,返回一个数组,但是返回的数组充满了“计数”和奇数指针,因为这个应用程序是一个API,设计用于移动设备上的Javascript,所以文本越少越好 去除所有没有键计数的值的最有效方法是什么?以及那些似乎只是在说明键是什么的(例如[0]=>cn) 瞄准 Array ( [status] => OK [results] => Array ( [0] => Array (

我有一个ldap请求,返回一个数组,但是返回的数组充满了“计数”和奇数指针,因为这个应用程序是一个API,设计用于移动设备上的Javascript,所以文本越少越好

去除所有没有键计数的值的最有效方法是什么?以及那些似乎只是在说明键是什么的(例如[0]=>cn)

瞄准

Array
(
    [status] => OK
    [results] => Array
        (
            [0] => Array
                (
                    [cn] => Array
                        (
                            [0] => James Bee
                        )
                    [umanprimaryou] => Array
                        (
                            [0] => Awesome School
                        )
                    [ou] => Array
                        (
                            [0] => School of Awesome
                            [1] => Faculty of Engineering
                        )
etc...
为了进一步解释,我想取消设置所有[count]=>值对,如果可能的话,取消设置结果数组中的[0]=>cn等值。

未测试代码:

function strip_count(array $arr) {
    foreach ($arr as $key => $value) {
        if (is_array($arr[$key])) {
            strip_count($arr[$key]);
        } else {
            if ($key == 'count') {
                unset($arr[$key]);
            }
        }
    }
}
编辑:在您编辑问题之前,我写了这篇文章,但修改此递归函数以删除您希望删除的其他内容应该不会太难。

未经测试的代码:

function strip_count(array $arr) {
    foreach ($arr as $key => $value) {
        if (is_array($arr[$key])) {
            strip_count($arr[$key]);
        } else {
            if ($key == 'count') {
                unset($arr[$key]);
            }
        }
    }
}

编辑:在您编辑问题之前,我写了这篇文章,但是修改这个递归函数以删除您希望删除的其他内容应该不会太难。

可能需要研究在您的用户定义函数中使用并检查
$key=='count'

可能需要研究在用户定义函数中使用并检查
$key=='count'

你能举一个你想要的数组输出的例子吗?看起来你过早地优化了一些可能不是真正的问题的东西。您知道这些额外字段会严重降低您的应用程序性能吗?@OriginalSyn它们不一定会降低性能,但由于连接到api的设备将是移动的,因此我可以使数据越小越好,并且计数字段在相关应用程序上根本不使用@史蒂夫科米,看帖子我也不明白你想做什么…你想删除所有的“计数”=>值元素吗?看看这个答案。你能举一个你想要的数组输出的例子吗?看起来你过早地优化了一些可能不是真正的问题的东西。您知道这些额外字段会严重降低您的应用程序性能吗?@OriginalSyn它们不一定会降低性能,但由于连接到api的设备将是移动的,因此我可以使数据越小越好,并且计数字段在相关应用程序上根本不使用@史蒂夫科米,看帖子我也不明白你想做什么…你想删除所有的“计数”=>值元素吗?看看这个答案。是否不需要将其作为引用传递?或者unset在给定数组上起作用吗?另外,我如何添加[0]=>cn的剥离?“由于PHP5通过引用传递数组值,因此可以直接更改数组值”-这不需要作为引用传递吗?或者unset在给定数组上起作用吗?另外,我如何添加[0]=>cn的剥离?“从PHP 5开始,通过引用传递数组的值,可以直接更改数组的值”-