Php 如何获取此对象中的值?

Php 如何获取此对象中的值?,php,mysql,object,Php,Mysql,Object,我也尝试 Array ( [0] => stdClass Object ( [MIN(budgetmin)] => 2 [MAX(budgetmax)] => 25 [AVG(budgetmin+budgetmax)] => 30 [VALUE] => staff ) ) 我没有得到任何结果。不幸的是,类属性的命名不是很好 foreach($array_values as $values) { echo $values->MIN(budgetmi

我也尝试

Array ( [0] => stdClass Object ( [MIN(budgetmin)] => 2 [MAX(budgetmax)] => 25 [AVG(budgetmin+budgetmax)] => 30 [VALUE] => staff ) ) 

我没有得到任何结果。

不幸的是,类属性的命名不是很好

foreach($array_values as $values) { 
    echo $values->MIN(budgetmin);
    echo $values->MAX(budgetmax);
    echo $values->VALUE;
}
此行试图调用参数为
budgetmin
MIN
方法。这不是你想要的

$values->MIN(budgetmin);
这可能对你有用


如果失败,您是否可以修改对象的内容,使其不包含括号?

您可以使用以下方法获得它:

$values->{"MIN(budgetmin)"}; 
但我建议您将SQL select查询重写为以下内容:

echo $values->{'MIN(budgetmin)'};
然后,您可以使用替代列名更轻松地访问数据:

SELECT MIN(budgetmin) AS new_column_name, ...
FROM ...

您的命名约定远非理想。考虑选择MySQLs
作为关键字的字段

echo $values->new_column_name;
$foo=newstdclass();
$foo->{'MIN(budgetMin)}=2;
$foo->{'MAX(budgetMax)}=25;
$foo->{'AVG(budgetmin+budgetmax)}=30;
$foo->{'VALUE'}='staff';
$fooArray=数组($foo);
foreach($fooArray作为$fooElement){
echo('MIN(budgetMin):'.$fooElement->{'MIN(budgetMin)}.
'; echo('MAX(budgetMax):'.$fooElement->{'MAX(budgetMax)}.
); echo('AVG(budgetmin+budgetmax):'.$fooElement->{'AVG(budgetmin+budgetmax)}.
); echo('VALUE:'.$fooElement->{'VALUE'}.
'); }
输出:

最小值(预算分钟):2
最大值(预算最大值):25
平均值(预算最小值+预算最大值):30
值:staff

尝试以下代码:
$foo = new stdClass();
$foo->{'MIN(budgetMin)'} = 2;
$foo->{'MAX(budgetMax)'} = 25;
$foo->{'AVG(budgetmin+budgetmax)'} = 30;
$foo->{'VALUE'} = 'staff';

$fooArray = array($foo);

foreach($fooArray as $fooElement) {
    echo('MIN(budgetMin): '. $fooElement->{'MIN(budgetMin)'} .'<br />');
    echo('MAX(budgetMax): '. $fooElement->{'MAX(budgetMax)'} .'<br />');
    echo('AVG(budgetmin+budgetmax): '. $fooElement->{'AVG(budgetmin+budgetmax)'} .'<br />');
    echo('VALUE: '. $fooElement->{'VALUE'} .'<br />');
}
更改sql查询选择最小值(budgetmin)作为列名称1,选择最大值(budgetmax)作为列名称2,选择平均值(budgetmin+budgetmax)作为列名称3,值 然后
一些巨魔今天似乎觉得很有趣。。。既然你的答案解决了OP的问题,我给你投票。可能是timesplinter在你之前几秒钟公布了他的答案,也可能没有。谢谢你的帮助,大卫·巴克兄弟
 Try this code: 
 Change your sql query SELECT MIN(budgetmin) as column_name1, MAX(budgetmax) as column_name2 , AVG(budgetmin+budgetmax) as column_name3, VALUE
 Then
 <?php
 foreach($array_values as $values) { 
    echo $values->column_name1;
    echo $values->column_name2;
    echo $values->column_name3;
    echo $values->VALUE;
}
?>