PHP stdClass 问题
PHP stdClass issue
我尝试创建一个需要像这样构造的通用对象:
[Content] => stdClass Object
(
[item] => Array
(
[0] => stdClass Object
(
[Value] => STRING
)
)
[item] => Array
(
[0] => stdClass Object
(
[Value] => ANOTHER STRING
)
)
)
这是我的代码:
$content = new stdClass();
$data = file('filname.csv');
foreach($data as $key => $val) {
$content->item->Value = $val;
}
每次循环迭代时都会覆盖自身。通过将 item
定义为这样的数组:
$content->item = array();
...
$content->item[]->Value = $val;
...结果也不是估计的。
即使使用数组,您每次都在覆盖数据。您应该创建用于存储值的临时对象,然后将它们放入 item
数组。
$content = new \stdClass();
$content->item = array();
foreach($data as $key => $val) {
$itemVal = new \stdClass();
$itemVal->Value = $val;
$content->item[] = $itemVal;
}
我尝试创建一个需要像这样构造的通用对象:
[Content] => stdClass Object
(
[item] => Array
(
[0] => stdClass Object
(
[Value] => STRING
)
)
[item] => Array
(
[0] => stdClass Object
(
[Value] => ANOTHER STRING
)
)
)
这是我的代码:
$content = new stdClass();
$data = file('filname.csv');
foreach($data as $key => $val) {
$content->item->Value = $val;
}
每次循环迭代时都会覆盖自身。通过将 item
定义为这样的数组:
$content->item = array();
...
$content->item[]->Value = $val;
...结果也不是估计的。
即使使用数组,您每次都在覆盖数据。您应该创建用于存储值的临时对象,然后将它们放入 item
数组。
$content = new \stdClass();
$content->item = array();
foreach($data as $key => $val) {
$itemVal = new \stdClass();
$itemVal->Value = $val;
$content->item[] = $itemVal;
}