Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Yii 1.1.14中将非模型对象数组转换为ArrayDataProvider?_Yii - Fatal编程技术网

如何在Yii 1.1.14中将非模型对象数组转换为ArrayDataProvider?

如何在Yii 1.1.14中将非模型对象数组转换为ArrayDataProvider?,yii,Yii,因此,我的变量包含一个对象数组。每个物体都是这样的 Array ( [0] => CustomAudienceBean Object ( [limit:protected] => [account_id:protected] => 2342354235235 [approximate_account:protected] => [data_sourc

因此,我的变量包含一个对象数组。每个物体都是这样的

Array
(
    [0] => CustomAudienceBean Object
        (
            [limit:protected] => 
            [account_id:protected] => 2342354235235
            [approximate_account:protected] => 
            [data_source:protected] => stdClass Object
                (
                    [type] => SEED_BASED
                    [sub_type] => ENGAGEMENT_EVENT_USERS
                    [creation_params] => []
                )

            [type:protected] => 
            [sub_type:protected] => 
            [creation_params:protected] => Array
                (
                )

            [delivery_status:protected] => stdClass Object
                (
                    [code] => 300
                    [description] => Audiences must include at least 20 people to be used for ads.
                )

            [code:protected] => 
            [description:protected] => 
            [external_event_source:protected] => 
            [id:protected] => 23423asdf23423tadf23
            [is_value_based:protected] => 
            [lookalike_audience_ids:protected] => 
            [lookalike_spec:protected] => stdClass Object
很深。。
如何在yii中将数组转换为ArrayDataProvider我认为没有现成的方法。您的
CustomAudienceBean
对象的属性受到保护,因此您无法直接访问它们。如果没有公共方法,则必须扩展该类

你有两个选择

  • 扩展
    CustomAudienceBean
    类并定义一个方法以返回所需的所有属性。然后迭代数据集并为
    CArrayDataProvider

  • 扩展
    CArrayDataProvider
    并馈送对象数组。然后在自定义
    ArrayDataProvider
    中,可以从
    CustomAudienceBean
    对象提取属性


  • 我已经解决了我的问题。。我扩展了CDATA提供程序。然后,当我实例化我自己的新CDATA提供程序时,我传递了bean对象:D。无论如何,谢谢