【问题标题】:PHP need to get an object's property value, but the property has a complicated keyPHP需要获取一个对象的属性值,但是该属性有一个复杂的键
【发布时间】:2015-06-28 16:31:09
【问题描述】:

我很惊讶这变得多么复杂。我将此代码用作 mysql 行提取:

$query_start_date = "SELECT MIN(date) FROM table";
$database->setQuery($query_start_date);
$start2 = $database->loadObjectList();
var_dump($start2);

我得到了这个结果(这看起来不错,因为它包含预期的数据):

array(1) { [0]=> object(stdClass)#7346 (1) { ["MIN(date)"]=> string(19) "2008-11-03 10:53:32" } } 

但是现在,我需要将该日期2008-11-03 10:53:32 放入另一个简单的变量中。我尝试了很多东西;下面的测试似乎是最接近的:

echo $start2[0]->MIN(date);

但为此我得到了错误: 致命错误:调用未定义的方法 stdClass::MIN() in ...

谁能告诉我如何获取该日期值并将其放入变量中?

【问题讨论】:

    标签: php mysql arrays object


    【解决方案1】:

    您可以使用花括号 {} 来访问该属性:

    echo $start2[0]->{'MIN(date)'};
    

    或者只是使用别名并使用它来方便您:

    SELECT MIN(date) AS mydate FROM `table`
    

    这样您就可以访问->mydate

    【讨论】:

    • 是的!并且知道在哪里可以了解更多关于这些花括号的信息以及它们的工作原理吗?
    • @JoeCool 这是手册中有关其他信息的条目php.net/manual/en/…
    • @JoeCool 当然,很高兴这有帮助
    猜你喜欢
    • 1970-01-01
    • 2016-07-13
    • 2012-03-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-28
    相关资源
    最近更新 更多