이 코드를 개선하여 동일한 기능을 계속해서 반복하지 않으려면 어떻게해야합니까? 변수 이름을 나중에 코드에서 사용하기 위해 특별히 설정해야하므로이 함수를 만드는 데 어려움을 겪고 있습니다. 여기반복 변수를 방지하기 위해 간단한 변수 값을 지정하고 나중에 테스트하는 것이 가장 좋습니다.
코드 ...
으로 나중에 코드에서 사용if (in_array("knownValue", $array)) {
$variableA = true;
} else {
$variableA = false;
}
if (in_array("knownValue", $array)) {
$variableB = true;
} else {
$variableB = false;
}
if (in_array("knownValue", $array)) {
$variableC = true;
} else {
$variableC = false;
}
if (in_array("knownValue", $array)) {
$variableD = true;
} else {
$variableD = false;
}
...
if ($variableA) {
//do stuff...
} else {
//do other stuff...
}
if ($variableB) {
//do stuff...
} else {
//do other stuff...
}
etc...
편집 -
감사합니다, 나는 그냥 잠을 필요 thnk! 코드를 축약하기 위해 관리
<select class='selectpicker width100 updateAbilities' name='staffAbliities[]' multiple>";
function renderOption($ability, $title, $array) {
if (in_array($ability, $array)) {
echo "
<option data-content='<img src='images/abilities/$ability.png'> $title' value='$ability' selected>
$title
</option>";
} else {
echo "
<option data-content='<img src='images/abilities/$ability.png'> $title' value='$ability'>
$title
</option>";
}
}
renderOption("ops", "Operations Manager", $abilities);
renderOption("guide_manager", "Guide Manager", $abilities);
renderOption("senior_guide", "Senior Guide", $abilities);
renderOption("guide", "Guide", $abilities);
renderOption("trainee_guide", "Trainee Guide", $abilities);
renderOption("big_bus", "Full PCV License", $abilities);
renderOption("small_bus", "Small PCV License", $abilities);
renderOption("wfr", "Wilderness First Responder", $abilities);
renderOption("ice_climber", "Ice Climber", $abilities);
echo "
</select>
했나 더 우아한 결정이라고 생각 "을 knownValue"때마다 다른 경우, 또는이 정확한 문자열은 모든 검사에 배열로 보면된다? – plamen
매번 다를 수 있습니다. –
구문을 짧게 사용하면 일부 코드를 저장할 수 있습니다. $ variableA = (in_array ("knownValue", $ array))? 허위 사실; – plamen