将stdClass数组过滤为单个数组

时间:2014-03-13 16:59:19

标签: php arrays pdo stdclass

我希望能够从PDO fetchAll返回一个stdClass数组并将其转换为单个数组。

所以我得到一个看起来像这样的数组:

// print_r($getCategories); returns..

        Array
    (
        [0] => stdClass Object
            (
                [field1] => 'foo',
                [field2] => 'foo2'
            )

        [1] => stdClass Object
            (
                [field1] => 'bar'
                [field2] => 'bar2'
            )
    )

我遍历这个并将一个字段列表放入一个组合框

// <select> and <option> around this..

    foreach($getCategories as $category) {

        echo $category->field1;

    }

现在我知道我可以使用以下代码创建一个数组

foreach($getCategories as $category){

    if($_POST['category'] == $category->field1){

        $chosenCategory = array(

            'field1' => $category->field1,
            'field2' => $category->field2

        );

    }

}

我只是想知道是否有更好的方法来做这个我不必构建数组,而只是过滤使用用户输入在$ getCategories中返回的内容?

我对OOP和编程一般都是新手,所以非常感谢解释和答案!

由于

0 个答案:

没有答案