/** * 检验对应的VO * @author 欧远宁 * @param string $mdl 模块名 * @param string $tbl 表名 * @param array $val 需要检验的数据 * @param bool $throw 是否直接抛出异常,默认为直接抛出异常,FALSE则在第一次出错的时候,返回FALSE。 * @throws err 抛出系统验证异常,我们一般认为只有黑客才会传入无法通过验证的异常 */ protected final function _valvo($mdl, $tbl, $val, $throw = TRUE) { $check = $GLOBALS['cfg'][$mdl]['schema'][$tbl]['check']; foreach ($val as $k => $v) { if (key_exists($k, $check) && $check[$k] != '') { if (!fun::val_str($v, $check[$k])) { if ($throw) { throw new err('The value of field [' . $k . '] , [' . $v . '] can not be verified'); } else { return FALSE; } } } } return TRUE; }