nebo je to mozna moje nevzelanost, kazdopadne bych rekl, ze je to chovani prinejmensim tezko ocekavatelne.
A PHP se na mul vkus chova dost zvlastne;Kód:
//tady zacina dulezita cast kodu
$obj= array();
$odcisla = array();
$cen = array();
$obd = array();
$posta = array();
//tady konci
$a=0;
$objednavka_[2]="145&10/2004&156.20&rocni&ne";
$magazin = 5; //to je jedno, proste aby ten cyklus probehl parkrat.
while($a<$magazin):
List($objX,$odcislaX,$cenX,$obdX,$postaX) = Explode("&",$objednavka_[$a]);
$obj[$a] = $objX;
$odcisla[$a] = $odcislaX;
$cen[$a] = $cenX;
$obd[$a] = $obdX;
$posta[$a] = $postaX;
echo $obj[$a]." - ".$objX;
echo $odcisla[$a]." - ".$odcislaX;
echo $cen[$a]." - ".$cenX;
echo $obd[$a]." - ".$obdX;
echo $posta[$a]." - ".$postaX;
$a++;
endwhile;
pokud se ta cast oznacena jako "dulezita" nevykona, udela to tohle:
z neznamyho duvodu u a == 2 (ostatni $objenavka_[$a] jsou prazdny stringy) ty echa vyplivnou neco podivnyho, totiz obj, cen, obd jsou v poradku normalne prirazeny, ale do $odcisla[$a] to priradi jen prvni znak, i kdyz $odcislaX je v poradku cely, a totez s $posta[$a].
takze kriticke casti outputu vypadaji nejak takhle:
Kód:...
1 - 10/2004
...
n - ne
pokud se vykona je vsechno v poradku.
Takze kdyz na zacatku nereknu, ze promenna je array(), tak je chovani pri prirazeni nepredvidatelny? Opravte me, pokud se pletu, ale mel jsem za to, ze to neni potreba zvlast rikat. - viz napr:verze php je 4.1.2Citace:
Původně odeslal http://www.php.net/types.array
setkal se s tim nekdo?
EDIT: ted jsem zkusil udelat simulaci toho sameho, jen jsem z kodu vytahl relevantni usek, a tam se to chova normalne, tak nevim...
EDIT2: no, tak jsem o kousek dal, je to tim, ze promenny tehoz jmena ($posta a $odcisla) uz tam dorazily predtim jako stringy z formulare. ale pri te simulaci, kdyz nejkou promennou podstrcim predem, stejne se to chova normalne.