我做了一个小的乘法函数
<p><?php
$a= "<?php echo $this->prodDet->v_price?>";
$b=.26;
$c=$a*$b;
echo $c;
?>这里,价格值是从请求者产品的数据库中提取出来的,并且是由固定的.26变量多个。不知道为什么要犯这个错误-
Catchable fatal error: Object of class stdClass could not be converted to string in我正在学习PHP的基础知识。有人能建议如何解决这个问题吗?
谢谢
发布于 2013-10-13 07:17:17
你不知道你在尝试什么吗?
$a = "<?php echo $this->prodDet->v_price?>";$a像<?php echo <the value of $this->prodDet->v_price>?>一样处理作业。那里的<?php部件没有执行。你肯定想写:
$a = $this->prodDet->v_price;并确保$a最终不是一个对象!(作业完成后,您可以在行中通过var_dump($a);检查哪些内容)
发布于 2013-10-13 07:18:29
在这些代码行之前的某个地方,v_price被设置为类实例。我猜这发生在prodDet的某个地方。
因此,当您将其转换为echo时,它会尝试转换为字符串,但是失败了。
要了解它是什么样的类,请尝试:
var_dump($this->prodDet->v_price);这将帮助您调试。
例如,在PHP: Catchable fatal error: Object of class stdClass could not be converted to string中,person意外地将变量设置为该行中的一个类:
$procID = $client->start(array("prefix"=>"Genesis"));然后,他们试图回显$procID并得到相同的错误。不能回显类,因为它不能更改为字符串。
还有,当你做的时候
$a = echo ...$a将不是您所期望的,因为echo只是打印到屏幕上!它不返回值。您需要删除echo并直接设置它:
$a = $this->prodDet->v_price->getSomeValue();发布于 2016-03-20 03:45:31
我还得到了相同的错误消息,即

经过一个小时的检查,我发现我做了一些小错误,在获取数据时我使用了变量符号($)两次。这就是

去掉一块钱后,它就可以正常工作了,这可能是帮助某人:)
https://stackoverflow.com/questions/19342776
复制相似问题