연관 배열을 포함하는 PHP 파일이 있습니다. 편집/업데이트하기 쉽도록 한 파일에 모든 파일이 있습니다. 예 :다른 파일의 중첩 된 함수에서 한 파일의 배열 사용
$ass_first = array( "title"=>"Title",
"first_name"=>"First Name",
"surname"=>"Surname",
"phone"=>"Phone Number",
"email"=>"Email Address",
"add1"=>"House Name/Number",
"add2"=>"Street",
"add3"=>"Town",
"add4"=>"City",
"add5"=>"Post Code"
);
다른 파일에는 다른 함수를 호출하는 변수가 전달되는 함수가 있습니다.
예를 들어 폼 입력을 포함하는 테이블을 만들기 위해 호출되는 함수가 있습니다. 이 함수에는 입력이 필요한지, 필요한 함수가 호출되는지 확인하는 테스트가 있습니다.
function create_table($titles, $id) { //$titles is the relevant array from lists.php, $id is the id of the containing div
$select = array('timescale','bus_route','train_stat'); //'select' id list
foreach ($titles as $k=>$v) { //$k is the database/id/name $v is the description text
if (in_array($k,$select)){
select_box($k,$v);
}
else if //input is a text area
text_box($k,$v);
}
else{ //input is a checkbox
check_box($k,$v);
}
}
} 나는 lists.php 파일에 포함 된 일부 배열을 참조 할 세 가지 '에 자리 잡고 기능'내부
.
이러한 배열을 함수 범위에 추가하는 가장 좋은 방법을 알고 싶습니다. 나는 변수 변수가 반드시 필요한 최선의 방법이 아니며 전역 변수를 선언하지도 않는다고 들었다. 나는 그것을 할 수있는 다른 방법을 생각할 수 없다!
다른 세 개의 네 스팅 된 함수가 서로 다른 배열 집합을 필요로하므로 세 개의 배열 집합이 전달되지만 한 번에 하나의 집합 만 사용되므로 함수로 변수로 전달할 수 없습니다!
왜 함수로 변수를 전달합니까? 입력이 선택/텍스트/체크 박스인지 결정하는 것은 무엇입니까? –
코드의 선택 섹션에 대한 업데이트를 참조하십시오. 기본적으로 입력의 이름이 'select'배열에 있으면 'select select input'함수가 호출됩니다. 하지만 $ k 및 $ v 값을 전달하는 것 외에 다른 배열에 대한 액세스가 필요합니다.이 배열은 함수로 전달되었습니다. – Giovanni
@BrianAdams 할 수는 있지만 모든 배열을 하나의 개별 파일로 유지하는 것이 더 쉽습니다. 업데이트하고 추적하십시오. 다른 파일에서 이러한 배열을 참조하는 가장 좋은 방법을 찾은 직후에요. – Giovanni