猿问

如何在 Codeigniter PHP 中删除 stdClass 对象

如何在 PHP 中删除 stdClass 对象?

控制器:

$detail['shipping'] = $this->Mymodel->Tcs_get_data('shipment_master'); 这是我的 ARRAY

看法:

使用 print_r($shipping);

Array ( [0] => stdClass Object ( [sc_id] => 1 [sc_amount_s] => 0 [sc_amount_e] => 4999 [sc_charges] => 150 [sc_status] => 0 [sc_delete] => 0 ) [1] => stdClass Object ( [sc_id] => 2 [sc_amount_s] => 5000 [sc_amount_e] => 9999 [sc_charges] => 100 [sc_status] => 0 [sc_delete] => 0 ) [2] => stdClass Object ( [sc_id] => 4 [sc_amount_s] => 10000 [sc_amount_e] => 99999 [sc_charges] => 0 [sc_status] => 0 [sc_delete] => 0 ) )


MMTTMM
浏览 164回答 3
3回答

弑天下

你所拥有的是一个关联的对象数组。stdClass表示通过指针访问的对象->。$shipping[0]->sc_id是如何访问stdClass数组中的对象,而在没有对象的关联数组中则是$shipping[0]['sc_id']。如果你想使用纯粹的数组,那么你需要坚持使用result_array()and row_array()。需要明确的是,尽管您可能会stdClass在 a 中看到print_r它作为字符串并不“可见”,但仅表示它是一个对象。

慕标琳琳

在控制器中编写此代码,$temp = $this->Mymodel->Tcs_get_data('shipment_master');$detail['shipping'] = json_decode(json_encode($temp), true); // true is for making it array

收到一只叮咚

您可以在模型查询中使用result_array()而不是result()这样做:$shippingArray = [];foreach ($shipping as $key => $value) {&nbsp; &nbsp; array_push($shippingArray, $value)}print_r($shippingArray);通过将所有值放在其他数组中或者您可以在您的视图中使用当前数组对象,例如:foreach ($shipping as $key => $value) {&nbsp; &nbsp; // Here you can use $value as you want..&nbsp; &nbsp; // echo '<tr><td>'. $value->sc_amount_e .'</td></tr>';&nbsp;}
随时随地看视频慕课网APP
我要回答