我有一个关于我认为必须非常容易的事情的快速问题 - 我做了一些研究,发现了一些看起来很有希望的链接,尤其是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?
答案 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'}