基本PHP-从stdClass对象中获取数据
我有一个快速的问题,关于一些我认为很简单的事情——我做了一些研究,发现了一些看起来很有希望的链接,尤其是,但由于某些原因,它对我不起作用 无论如何,我在MySQL中创建了一个存储过程,并使用MySQL Workbench对其进行了测试,它工作正常——它只添加num1和num2并返回结果。现在我试图让它在PHP中工作,但结果不是一个整数,而是一个包含该整数的stdClass对象的数组。从返回大量数据的过程的角度来看,这是有道理的,但是我在只处理整数时遇到了一些困难 我运行以下命令:基本PHP-从stdClass对象中获取数据,php,mysql,Php,Mysql,我有一个快速的问题,关于一些我认为很简单的事情——我做了一些研究,发现了一些看起来很有希望的链接,尤其是,但由于某些原因,它对我不起作用 无论如何,我在MySQL中创建了一个存储过程,并使用MySQL Workbench对其进行了测试,它工作正常——它只添加num1和num2并返回结果。现在我试图让它在PHP中工作,但结果不是一个整数,而是一个包含该整数的stdClass对象的数组。从返回大量数据的过程的角度来看,这是有道理的,但是我在只处理整数时遇到了一些困难 我运行以下命令: CALL
CALL database.routine(2,7)
我将结果保存到$var中。当我运行print\r($var)时,我得到:
因此,为了通过数组部分,我特别要求它的第一个元素,运行print_r($var[0]),这让我:
stdClass Object
(
[num1+num2] => 9
)
现在我需要更深入一层…我尝试了我上面链接的页面所说的内容,并尝试获得$var[0]->[num1+num2],因为该字段似乎是命名的,但这不起作用。我也尝试了一些单引号和双引号的组合,但是运气不好。如何从这个对象中提取数字9?试试这个
$var[0]->{"num1+num2"}
或
你试过这个吗
$var[0]->{'num1+num2'}
试试下面的
$var[0]->{'num1+num2'}
试试
$var[0]->{'num1+num2'}
这是疯狂的,但它可能只是工作
$var[0]->{'num1+num2'}
考虑修改数据库例程以使用列别名,因此它不会返回键num1+num2
,而是返回一个更有用的键选择num1+num2作为您的_编号
好主意,我不知道我能做到!虽然其他答案在技术上是正确的,但Michaels是关于干净代码的唯一好解决方案(当然是imho)啊哈!现在有一个标点符号组合我没有试过!很好用!谢谢我会接受你的答案,一旦计时器停止,今天就输了是的,我同意,在这些类型的问题上,你会得到大量用户推同一个答案。分数应该奖励给第一响应者。
$var[0]->{'num1+num2'}
$var[0]->{'num1+num2'}