Mir fehlt nun ein letzter Schritt bei der discrete Choice-Analyse. Ich möchte die beiden zufällig gezogenen Kombinationen (insgesamt 180 Möglichkeiten) separat abspeichern, damit ich die vier Attribute in einem nächsten Schritt in einer Tabelle darstellen kann.
Das Problem liegt beim Übergang von replace() zur list(). Es kommen jeweils Fehlermeldungen, dass $AP10_01_1 oder %AP10_01_1% oder $APx01 (habe alle mir in Sinn kommende Möglichkeiten ausgetestet) nicht definiert ist.
Wie kann ich also die gezogene Kombination definieren, sodass ich diese dann in der Tabelle differenziert anzeigen kann?
Eine Kombination beinhaltet jeweils 4 Eigenschaften. Es gibt insgesamt 180 Möglichkeiten.
$kombinationen = array(
1 => array('20'.'%','allgemeines Gemeinde'.'- oder Kantonsbudget','100'.'% an den Kanton','keine Freigrenze'),
2 => array('20'.'%','allgemeines Gemeinde'.'- oder Kantonsbudget','50'.'% an Kanton und 50'.'% an Gemeinde','keine Freigrenze'),
3 => array('20'.'%','allgemeines Gemeinde'.'- oder Kantonsbudget','100'.'% an d'.'ie Gemeinde','keine Freigrenze'),
4 => array('20'.'%','allgemeines Gemeinde'.'- oder Kantonsbudget','100'.'% an den Kanton','unter 20 000 CHF abgabefrei'),
...
178 => array('60'.'%','raumplanerischen Tätigkeiten','100'.'% an den Kanton','unter 100 000 CHF abgabefrei'),
179 => array('60'.'%','raumplanerischen Tätigkeiten','50'.'% an Kanton und 50'.'% an Gemeinde','unter 100 000 CHF abgabefrei'),
180 => array('60'.'%','raumplanerischen Tätigkeiten','100'.'% an d'.'ie Gemeinde','unter 100 000 CHF abgabefrei'),
);
$variants = valueList('AP10');
debug($variants);
foreach ($variants as $varID => $code) {
$data = $kombinationen[$code];
foreach ($data as $i => $text) {
replace('%'.$varID.'_'.($i+1).'%', $text);
}
}
list($A1L, $A2L, $A3L, $A4L) = $AP10_01_1;
list($A1R, $A2R, $A3R, $A4R) = $AP10_02_1;
html('
<table border="1" width="100%" cellspacing="0">
<colgroup>
<col width="25%">
<col width="37.5%">
<col width="37.5%">
</colgroup>
<tr>
<td></td>
<td bgcolor="lightgray"><b>Alternative 1</b></td>
<td bgcolor="lightgray"><b>Alternative 2</b></td>
</tr>
<tr>
<td bgcolor="lightgray"><b>Abgabesatz</b></td>
<td> '.$A1L.' </td>
<td> '.$A1R.' </td>
</tr>
<tr>
<td bgcolor="lightgray"><b>Verwendungszweck</b></td>
<td> '.$A2L.' </td>
<td> '.$A2R.' </td>
</tr>
<tr>
<td bgcolor="lightgray"> <b>Ertragsaufteilung</b> </td>
<td> '.$A3L.' </td>
<td> '.$A3R.' </td>
</tr>
<tr>
<td bgcolor="lightgray"><b> Mindestfreigrenze</b> </td>
<td> '.$A4L.' </td>
<td> '.$A4R.' </td>
</tr>
</table>
);