是否可以更改对象..的值。。?
我在数组中有这个对象:
Array (
[0] => stdClass Object (
[**sdshan**] => 25014408
[sduom] => Z5
[sduorg] => 11651
)
[1] => stdClass Object (
[**sdshan**] => 2500880
[sduom] => Z5
[sduorg] => 11193
)
[2] => stdClass Object (
[**sdshan**] => 25014447
[sduom] => Z5
[sduorg] => 5000
)
[3] => stdClass Object (
[**sdshan**] => 2500557
[sduom] => Z5
[sduorg] => 4200
)
[4] => stdClass Object (
[**sdshan**] => 2500348
[sduom] => Z5
[sduorg] => 4000
)
)
我想将sdshan的值更改为ASDF。所以,最后的数组看起来是这样的:
Array ( [0] => stdClass Object (
[**sdshan**] => ASDF
[sduom] => Z5
[sduorg] => 11651
)
[1] => stdClass Object (
[**sdshan**] => ASDF
[sduom] => Z5
[sduorg] => 11193
)
[2] => stdClass Object (
[**sdshan**] =>ASDF
[sduom] => Z5
[sduorg] => 5000
)
[3] => stdClass Object (
[**sdshan**] => ASDF
[sduom] => Z5
[sduorg] => 4200
)
[4] => stdClass Object (
[**sdshan**] => ASDF
[sduom] => Z5
[sduorg] => 4000
)
)
更新,这是我想尝试做的:
function test(){
$result = $this->db->select('sdshan,sduom,sduorg')->from('a')->get();
foreach($result->result() as $data){
// i want to give some condition here, if sdshan then the values of object sdhsan will be change to ASDF
$new_result[]=$data;
}
}
是的,你可以做到。
您可以在数组中循环,并通过对象的键设置对象的值。就像这样。
for($i=0;$i<sizeof($array);$i++) {
$object=$array[$i];
$object->sdshan="your value";
}
您需要应用foreach
循环。
<?php
$your_array = array();
foreach ($your_array as $array) {
$pos = array_search($valToReplace, $array );
if ($pos !== FALSE)
{
$array[$pos] = $newVal;
}
}
?>
试试这个!
foreach(myarray as $key => $myobject){
$myobject->sdshan = "XXXX";
}
要使用对象,必须使用->而不是。