大家好我是php新手。我在将此代码放入函数时遇到一些麻烦,任何人都可以解释或说明如何执行此操作?因为这段代码将不止一次使用
foreach($_POST as $weather_key => $weather){
$for_now=is_array($weather) ? $weather : trim($weather));
if(empty($temporary) && in_array($key,$required_weather_fields)){
$weather_errors[]=$weather;
$$weather_key='';
}elseif(in_array($weather_key,$expected_weather_fields)){
$$weather_key=$for_now;
}
}
答案 0 :(得分:0)
看起来你没有任何参数,所以你只需写下这样的东西:
function weather_function() {
foreach($_POST as $weather_key => $weather) {
$for_now = is_array($weather) ? $weather : trim($weather));
if(empty($temporary) && in_array($key, $required_weather_fields)) {
$weather_errors[] = $weather;
$$weather_key = '';
} elseif(in_array($weather_key, $expected_weather_fields)) {
$$weather_key = $for_now;
}
}
}
然后当你想要使用它时:
weather_function();
答案 1 :(得分:0)
这样的事情应该有效:
function weather($data, $required_weather_fields, $expected_weather_fields, $temporary) {
foreach($data as $weather_key => $weather){
$for_now=is_array($weather) ? $weather : trim($weather));
if(empty($temporary) && in_array($weather_key,$required_weather_fields)){
$weather_errors[]=$weather;
$$weather_key='';
}elseif(in_array($weather_key,$expected_weather_fields)){
$$weather_key=$for_now;
}
}
return array($$weather_key, $weather_errors);
}
list($key, $errors) = weather($_POST);
您应该注入$ _POST数组,而不是在函数内引用它。