trim()
그것을 확인하거나 삽입하기 전에 데이터를 준비하는 것이 좋다. 당신은 아마 정돈하는 것 이상으로 준비하고 싶어 할 것입니다. 내가 전에 본 적이 멋진 기술은 당신의 준비 기능을 통해 "파이프"에 있습니다 :
는
$data = prepare($data, array(
'first_name' => 'trim|custom_function',
'surname' => 'trim',
));
이런 식으로 그 일의 아름다움은 코드를 쉽게 읽을 수 있으며 각각의 특정 배열 요소에 기능을 실행하는 데 매우 쉽습니다. 콜백 참조로 첫 번째 매개 변수를 사용하고 수정하는 기능을해야 배열의 항목 (값을) 수정 array_walk
를 들어
function prepare($data, $arr){
foreach($arr as $input_name => $functions){
foreach(explode('|', $functions) as $function){
$data[$input_name] = call_user_func($function, $data[$input_name]);
}
}
return $data;
}
감사합니다. array_map이 돌아 오는 것을 놓치 셨습니다.하지만 pealse는 왜 array_walk를 잘못된 함수로 간략히 설명 할 수 있습니까? –
[manual] (http://php.net/array-walk)을 읽으면 array_walk은 배열의 각 값 (및 키)이있는 ** 함수를 ** 호출 **합니다. 그래서 그것은 다음과 같은 결과를 가져올 것입니다 :'trim ('test_data_1', 0); trim ('test_data_2', 1)'- 할당이없고 부작용이 없다. 물론 array_walk에 대한 함수를 작성하여 실제 배열 요소를 잘라낼 수 있습니다. –