以下のコードは、完全なオプションタイプで個々のオプションを取得します。したがって、たとえば$ optionがADの場合、explodeを使用することにより、ABCDを出力するための個々のオプションを表示できます。
この例では、ABCDにそれぞれ独自のチェックボックスを設定します。A
ただし、以下のコードでは、AとDのチェックボックスを作成しているだけです。これは、、、、、の場合の最初と最後のB
オプションC
ですD
。これはどのように行うことができますか?
function ExpandOptionType($option) {
$options = explode('-', $option);
foreach($options as $indivOption) {
echo '<p><input type="checkbox" name="options[]" id="option-' . $indivOption . '" value="' . $indivOption . '" /><label for="option-' . $indivOption . '">' . $indivOption . '</label></p>';
}
if(count($options) > 1) {
$start = array_shift($options);
$end = array_shift($options);
do {
$options[] = $start;
}while(++$start <= $end);
}
else{
$options = explode(' or ', $option);
}
return implode(" ", $options);
}