【发布时间】:2014-02-06 13:03:04
【问题描述】:
这是一个风格多于功能的问题。目前,我使用以下代码生成一个数组,这些值在函数中经过了各种正则表达式。
然而,这意味着必须引用最终数组,当向 SQL 查询添加大量值时,与直接变量相比,该数组开始看起来相当混乱。
我可以在调用函数后将数组提取到变量中,但我想知道是否有某种方法可以在函数内部执行此操作并且不会遇到范围问题,或者我应该避免使用直接变量并坚持使用数组?
<?php
function formData($form_vars)
{
$regex_array = array(
'alpha_num' => "/[^a-zA-Z0-9[:space:][:blank:]]/",
'basic' => "/[^a-zA-Z0-9[:space:][:blank:],.\\'()&-]/"
);
foreach ($form_vars as $key => $var) {
$regex = $regex_array[$var];
$val = preg_replace($regex, '', $_REQUEST[$key]);
$vars[$key] = $val;
}
return $vars;
}
$vars = array(
'address_one' => "basic",
'address_two' => "basic",
'address_three' => "basic",
'postal' => "alpha_num"
);
$vars = formData($vars);
echo $vars['address_one'];
?>
【问题讨论】:
标签: php