所以我试图动态创建一个对象,请参阅我的项目模型中的以下代码
function get_total($param)
{
$i = new Item();
$items = $i->get();
$total_value = 0;
$query = "$item->".$param;
foreach($items as $item)
{
if($item->qty > 0)
{
$total_value += $query * $item->qty;
}
}
return $total_value;
}
因此,例如,在我的mysql表中,我将成本和价格映射为$ item对象的属性 - 例如,我试图使该变量$ query,输出以下对象 - $ item->成本
这样我就可以从我的视图中调用该函数,如:
echo $i->get_total('price');
或
echo $i->get_total('cost');
使我的模型选择更具动态性。但是我不确定这样做的正确方法,因为它似乎试图通过根据参数来为它创建一个动态对象,这是不可能的。那么有人可以告诉我如何正确地做到这一点吗?
提前感谢您的帮助!
那就在我的
上答案 0 :(得分:1)
只需替换:
$query = "$item->".$param;
通过
$query = $item->$param;
希望有帮助=)