【问题标题】:How to access RedBeansPHP Object’s Second Arrray? [closed]如何访问 RedBeanPHP 对象的第二个数组? [关闭]
【发布时间】:2013-02-10 15:34:02
【问题描述】:

我正在使用 RedBeansPHP 3.3 并有以下由 RedBeans findOne 创建的名为 $result 的 PHP 对象:

RedBean_OODBBean Object
(
    [null:RedBean_OODBBean:private] => 
    [properties:RedBean_OODBBean:private] => Array
        (
            [id] => 10
            [datetime] => 2013-02-10 10:17:43
            [ip] => 68.32.52.219
            [vcode] => 6780-QBDY
            [roll1] => 7
            [roll2] => 8
            [roll3] => 10
            [roll4] => 6
            [roll5] => 1
            [roll6] => 4
            [roll7] => 2
            [roll8] => 4
            [roll9] => 2
            [roll10] => 8
        )

    [__info:RedBean_OODBBean:private] => Array
        (
            [type] => dice
            [sys.id] => id
            [tainted] => 
            [sys.orig] => Array
                (
                    [id] => 10
                    [datetime] => 2013-02-10 10:17:43
                    [ip] => 68.32.52.219
                    [vcode] => 6780-QBDY
                    [roll1] => 7
                    [roll2] => 8
                    [roll3] => 10
                    [roll4] => 6
                    [roll5] => 1
                    [roll6] => 4
                    [roll7] => 2
                    [roll8] => 4
                    [roll9] => 2
                    [roll10] => 8
                )

        )

    [beanHelper:RedBean_OODBBean:private] => RedBean_BeanHelper_Facade Object
        (
        )

    [fetchType:RedBean_OODBBean:private] => 
    [withSql:RedBean_OODBBean:private] => 
    [aliasName:RedBean_OODBBean:private] => 
)

我想访问第二个数组中的值[type] => dice。它的 PHP 语法是什么?

$result->?????????->输入[我关闭了吗?]

谢谢!

【问题讨论】:

  • __info 数组属性是private 属性,这意味着您无法访问它,除非您修改类以为其编写getter 方法。我无法从像您的 $result 这样的对象变量访问。
  • 不确定the API 是否已经提供了访问它的方法。
  • 我可以通过说$result->ip 或代替ip 的任何内容来访问整个第一个数组。这也被标记为private。按理说我应该能够访问第二个数组?
  • 不是这样 - 如果你正在做 $result->ip 你得到的不是直接来自 properties 数组的值。那是private,你不能直接访问类方法之外的私有属性。请发布您用于获取 IP 的 PHP 代码,因为它不能通过 $result->properties['ip'](如果您在类方法中工作,可以通过 $this->properties['ip']
  • 如果我这样做:$var = $result->ip; echo $var; 我确实得到了68.32.52.219 的返回。

标签: php arrays object orm redbean


【解决方案1】:

想知道谁在寻找我从 RedBeans 创建者那里得到的答案。

您可以通过以下方式访问 RedBeans 类型:

$beanTable = $bean->getMeta('type');

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-22
    • 2020-04-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-15
    相关资源
    最近更新 更多