dcelasun/extract_property

从对象数组中提取给定的属性

1.0.1 2013-07-11 06:44 UTC

This package is not auto-updated.

Last update: 2024-09-23 14:59:57 UTC


README

Build Status

这个简单的库提供了一种简单的方法,可以从对象数组中提取给定的属性。

用法

array extract_property( array $objects, mixed $key [, mixed $index] )

给定一个对象数组,extract_property() 返回每个对象的单个属性值,由 $key 标识。您可以选择提供一个 $index,以便根据输入数组中每个对象的 $index 属性值对返回数组中的值进行索引。

例如,使用以下 $users 数组,我们告诉 extract_property() 返回一个只包含名字的数组,并按记录ID进行索引。

<?php
$users = array();

$a = new stdClass;
$b = new stdClass;
$c = new stdClass;

$a->id = 1;
$a->name = 'John';
$a->surname = 'Doe';

$users[] = $a;

$b->id = 2;
$b->name = 'Jane';
$b->surname = 'Doe';

$users[] = $b;

$c->id = 3;
$c->name = 'Foo';
$c->surname = 'Bar';

$users[] = $c;

$names = extract_property($users, 'name', 'id');

如果我们调用 print_r()$names 上,你会看到一个看起来像这样的结果数组

Array
(
    [1] => John
    [2] => Jane
    [3] => Foo
)

当然,你可以省略 $index,那么结果数组看起来像这样

Array
(
    [0] => John
    [1] => Jane
    [2] => Foo
)

安装

安装此库最简单的方法是使用 Composer,并将以下内容添加到您项目的 composer.json 文件中

{
    "require": {
        "dcelasun/extract_property": "1.*"
    }
}

然后,当您运行 composer install 时,一切都将神奇地就位,并且 extract_property() 函数将可用于您的项目,只要您包含 Composer 的自动加载器。

但是,您不需要 Composer 就可以使用此库。

此库没有依赖项,应该在旧版本的 PHP 上正常工作。下载代码,并在您的项目中包含 src/extract_property.php,然后一切应该运行良好。