我在修改对象数组的值时遇到了问题。
array (size=2)
0 =>
object(stdClass)[25]
public 'time1' => string '09:00:00' (length=8)
public 'btm_01' => string '40.00' (length=5)
public 'bto_01' => string '41.00' (length=5)
public 'rs_01' => string '42.00' (length=5)
1 =>
object(stdClass)[26]
public 'time1' => string '10:00:00' (length=8)
public 'btm_01' => string '41.00' (length=5)
public 'bto_01' => string '40.00' (length=5)
public 'rs_01' => string '40.00' (length=5)
我需要一个for循环来删除对象数组的每个值中的'.00'。要删除'.00'这很容易,但是在我删除它之后,我仍然无法用对象数组中的新值替换旧值。
你能帮助我,如何用PHP修改对象数组中的值?
谢谢!
答案 0 :(得分:2)
罗,
这么简单..我会给你一个例子
foreach($data['bottom_max'] as $key => $value)
{
foreach ($value as $name_row => $val_row) {
if (strpos($val_row, '.0')) {
$tmp = substr($val_row, 0, -3);
$data['bottom_max'][$key]->$name_row = $tmp;
}
}
}
希望它能回答你的问题。
答案 1 :(得分:0)
简单:
<?php
$object[0]->time1 = '10:00:00';
?>
就像你想象的那样
答案 2 :(得分:0)
试试这个(通过引用访问obejct):
foreach($array as & $obj) {
$obj->time1 = $newvalue;
}