1
我有需要处理并打印到用户的项目列表。更好的方式来处理项目的有序列表?
列表上的每个项目都需要一组唯一的计算。
唯一的一点是,用户还提供我的项目将如何打印&优先处理的顺序 - 例如:ITEM4,项目2,项目1,项目3
哪有一个方法,这在PHP?
我想到了针对用户提交的有序列表运行for循环,并处理每个计算并将其打印到用户,问题是这将难以维护,因为用户每次都必须编辑for循环他会想添加一个新的项目或计算。
我有需要处理并打印到用户的项目列表。更好的方式来处理项目的有序列表?
列表上的每个项目都需要一组唯一的计算。
唯一的一点是,用户还提供我的项目将如何打印&优先处理的顺序 - 例如:ITEM4,项目2,项目1,项目3
哪有一个方法,这在PHP?
我想到了针对用户提交的有序列表运行for循环,并处理每个计算并将其打印到用户,问题是这将难以维护,因为用户每次都必须编辑for循环他会想添加一个新的项目或计算。
鉴于1-n项的列表:
$items['item1'] = $item1;
随着1-N功能的协同相关列表:
$functions['item1'] = function($item) {return ...;};
您可以根据用户输入的项目进行排序:
$subset = orderAndFilterItems($items, $userInput);
,然后遍历:
foreach($subset as $key => $item)
{
$function = $functions[$key];
$value = $function($item);
}
当然,你可以将其进一步封装,但它应该给你的想法。
谢谢!惊人的答案 – Tzvi 2012-02-15 17:33:41
只是澄清:你需要对列表中的不同项目应用不同的计算,所以如果列表的顺序是“马铃薯,胡萝卜,鸡蛋”,你会想要捣碎马铃薯,剥开胡萝卜,煮沸蛋。最重要的是,它们可能不是这样的顺序(可能是“胡萝卜,土豆,鸡蛋”),但是你仍然想对每个项目应用适当的计算? – Joe 2012-02-15 16:57:13
是啊乔你说得对 – Tzvi 2012-02-15 16:58:30