基本PHP - 从stdClass对象中获取数据

时间:2012-06-11 13:49:41

标签: php mysql

我有一个关于我认为必须非常容易的事情的快速问题 - 我做了一些研究,发现了一些看起来很有希望的链接,尤其是this,但由于某些原因它对我不起作用

无论如何,我在MySQL中创建了一个存储过程并使用MySQL Workbench对其进行了测试,它可以工作 - 只需添加num1和num2并返回结果。现在我试图让它在PHP中工作,但结果,而不是一个整数,是一个包含该整数的stdClass对象的数组。从返回大量数据的过程的角度来看,这是有道理的,但是我遇到一些问题只能归结为整数。

我跑了这个:

   CALL database.routine(2,7)

我将结果保存到$ var。当我运行print_r($ var)时,我得到:

    Array
    (
    [0] => stdClass Object
    (
    [num1+num2] => 9
    )
    )

所以,为了通过数组部分,我特意通过运行print_r($ var [0])来询问其中的第一个元素,它让我:

    stdClass Object
    (
    [num1+num2] => 9
    )

现在我需要深入一级......我尝试了上面链接的页面所说的并尝试进入$ var [0] - > [num1 + num2],因为该字段似乎是命名,但这不起作用。我也试过一些单引号和双引号的组合,但没有运气。如何从这个对象中获取数字9?

5 个答案:

答案 0 :(得分:5)

...试

$var[0]->{'num1+num2'}

答案 1 :(得分:3)

试试这个

$var[0]->{"num1+num2"}

$prop = 'num1+num2';
$var[0]->$prop;

答案 2 :(得分:2)

你试过这个吗?

$var[0]->{'num1+num2'}

答案 3 :(得分:2)

尝试以下$var[0]->{'num1+num2'}

答案 4 :(得分:0)

这很疯狂,但它可能会起作用!

$var[0]->{'num1+num2'}