我有像这样的stdClass数组
stdClass Object
(
[IS_ProductId] => 322
[IS_ProductDesc] =>
[IS_ProductName] => SMARTsite™ Setup/1x - 0699
[IS_ProductPrice] => 699
)
假设我在变量$product
中获取上述数组。
我想要做的是,我想覆盖第三个键值IS_ProductName
我想通过html_entity_decode
传递它,但是当我这样做时,我收到错误消息Cannot use object of type stdClass as array
我试过了
$product->IS_ProductName = html_entity_decode($product[0]->IS_ProductName, ENT_QUOTES, 'utf-8');
我该如何解决?请帮忙..
答案 0 :(得分:0)
从代码中删除[0]
,如下所示:
$product->IS_ProductName = html_entity_decode($product->IS_ProductName, ENT_QUOTES, 'utf-8');
$product
是单个值而不是数组,因此不需要[0]
引用。
答案 1 :(得分:0)
您说$product
是stdClass
对象。如果是这样,您就不需要数组访问表示法[0]
。你早先就行了。您的代码应如下所示:
$product->IS_ProductName = html_entity_decode($product->IS_ProductName, ENT_QUOTES, 'utf-8');
(如果你有一个stdClass
个对象数组,那么你需要数组访问表示法。)
答案 2 :(得分:0)
您需要在$product->IS_ProductName
函数中写$product[0]->IS_ProductName
而不是html_entity_decode()
。
请查看以下工作代码。
$product->IS_ProductName = html_entity_decode($product->IS_ProductName, ENT_QUOTES, 'utf-8');
如果还有任何问题,请告诉我。