PHP에서 변수의 루프를 처리하는 가장 좋은 방법은 무엇입니까? 설명하겠습니다.배열 값을 foreach에 전달하고 마지막으로 다른 변수에 전달 하시겠습니까?
<?php
$FORM_FIELD_INDUSTRY = '<select><option value=>Select an Industry</option>'.$INDUSTRY.'</select>';
?>
는 여기에 필요한 내용은 다음과 같습니다
<?php
$SELECT_INDUSTRY = array("Industry1", "Industry2", "Industry3");
require_once('form.inc');
?>
<html>
<head></head>
<body>
<?php echo $FORM_FIELD_INDUSTRY ?>
</body>
</html>
내가 다음 form.inc라는 두 번째 파일이 :
나는 다음을 포함의 index.php라는 파일이 있습니다. 입력 된 배열 값을 foreach에 전달하여 배열을 처리하고 <option></option>
코드를 내 보내야합니다. 다음은 그 예입니다.
foreach ($SELECT_INDUSTRY as $INDUSTRY) {
echo '<option value="$INDUSTRY">$INDUSTRY</option>';
}
따라서이 함수는 배열 값을 기반으로 선택 옵션을 만듭니다. 이 방법이 효과적이지만 위의 form.inc 파일에서 정의한 변수에 전체 값을 전달하는 방법은 무엇입니까? form.inc 파일에서 변수로 $ INDUSTRY를 가졌습니다. 다른 함수에서 일종의 반환이 필요합니다. 함수가 올 경우 전역 변수를 전달해야 할 수도 있습니다. 이것을 처리하는 더 좋은 방법이 있습니까?
내 최종 목표는 배열 값을 기반으로 foreach 함수를 내보내는 $ FORM_FIELD_INDUSTRY 변수를 사용하는 것입니다.
솔루션이 솔루션은 아래에 나열되어
하지만,이 건너 오는 사람을 위해, 여기에 내가 무슨 짓을 :
index.php를
<?php
$SELECT_INDUSTRY = array("Industry1", "Industry2", "Industry3");
$FORM_SELECT_SIZE = '';
require_once('form.inc');
?>
<html>
<head></head>
<body>
<?php get_options($FORM_FIELD_INDUSTRY) ?>
</body>
</html>
form.inc
<?php
function get_options($arr = array()) {
global $FORM_SELECT_SIZE;
echo '<select id="industry" class="'.$FORM_SELECT_SIZE.'"><option value=>Select an Industry</option>';
foreach($arr as $option) {
echo '<option>'.$option.'</option>';
}
echo '</select></div></div>';
}
$FORM_FIELD_INDUSTRY = $SELECT_INDUSTRY;
?>
함수와 변수 사이에 값을 전달하는 아주 간단한 솔루션입니다.
function get_options($arr = array()) {
echo '<select>';
foreach($arr as $option) {
echo '<option>'.$option.'</option>';
}
echo '</select>';
}
다음 HTML에서이처럼 호출 할 수 있습니다 : 그래서
<html>
<head></head>
<body>
<?php get_options($SELECT_INDUSTRY); ?>
</body>
</html>
내가라면을
거기에 foreach? – Gazillion
그것에 대해 생각했지만 올바른 코드를 얻을 수 없었습니다. foreach를 함수로 분해 할 수 있다고 가정하지만 변수 선언 내에서 함수를 어떻게 호출할까요? 내가 할 수 있는지 잘 모르겠다. – stebesplace
변수를 함수의 인수로 전달할 수 있습니다. 아래 답변의 코드를 참조하십시오. – Gazillion