【发布时间】:2013-06-17 09:55:33
【问题描述】:
我在这里查看了一些答案,但我完全无法得到我想要的东西,所以如果我根据我的情况来问它:
首先,让我说我是 Velocity 的非常新手,但我非常精通 PHP。我知道我们在这里将苹果与橙子进行比较,但请耐心等待 - 只是通过示例。
想象一下:我有一些来自数据库的新对象数组中的数据。每条记录中都有一个唯一标识符。我想将此唯一标识符用作对象中的变量名。
在 PHP 中,这很简单:
<?php
$goalObject = new stdObject();
foreach ($row as $data)
{
$identifier = $data->unique_id;
$goalObject->$$identifier = new stdObject();
$goalObject->$$identifier->name = $data->name;
$goalObject->$$identifier->total = $data->num_apples + $data->num_oranges;
}
注意identifier ($$) 的双重印记。
现在,值得注意的是,unique_id 确实以字母开头,所以它应该适合用作变量名。一个示例 unique_id 将类似于 AAA0000 或类似的东西。没有空格,没有连字符,没有任何标点符号。
所以,我的目标对象是$goalObject->AAA0000->name 或$goalObject->AAA0000->total。 (或 $goalObject.AAA0000.name 和 $goalObject.AAA0000.total 在 Velocity 中。)
如果我能做这样的事情,我会很高兴。但据我所知,Velocity 不允许有这么酷的东西。
请有人帮帮我。
提前感谢您对我的任何回答。
【问题讨论】:
-
这看起来像是最近帖子的副本:stackoverflow.com/questions/17084542/…
标签: velocity dynamic-variables