【发布时间】:2009-05-11 18:17:09
【问题描述】:
// a beautiful multidimensional array
public $form = array (
array(
'field' => 'email',
array(
'params' =>
array(
'rule' => 'email',
'on' => 'create',
'required' => true,
),
),
array(
'params' =>
array(
'rule' => 'email',
'on' => 'update',
'required' => false,
)
)
)
);
// beautiful foreach loops
public function validate($form) {
foreach ($form as $valueA) {
$field = $valueA['field'];
foreach ($valueA as $valueB) {
$params = $valueB['params'];
foreach ($valueB as $valueC) {
$rule = $valueC['on'];
$on = $valueC['on'];
$required = $valueC['required'];
$this->isValid($field, $rule, $on, $required);
}
}
}
}
// they do not work together!!!
【问题讨论】:
-
为什么一切都如此“美丽”?
-
我正在尝试编写可维护的代码。
-
这似乎可以进一步简化,我不喜欢你如何将“参数”包装在一个数组中
-
仍在尝试 public function validate($form) { for ($a = 0; $a isValid($field, $rule, $on, $required); } } } }
标签: php foreach multidimensional-array