Code:
$i++;
$i--;
$i++;
$i--;
Znači oni inkrementuju ili dekrementuju promenljivu $i bez prethodne inicijalizacije i davanja početne vrednosti. To kod mene ne radi. Ja to moram da napišem ovako:
Code:
$i=0;
$i++;
$i--;
$i=0;
$i++;
$i--;
Ovo meni ima logike jer se tako radi i u C++. Kako može da inkrementuje premeljivu a nema početnu vrednost kao referencu od koje će da krene? Osim ako se po default-u ne podrazumeva da ako nije definisana promenljiva prva vrednost bude 0 ili 1. Ali ako je to tako zašto se to kod mene ne izvršava tako?
Isti slučaj sa arrays. Evo ga njihov kod. Ubacio sam samo par redova da se vidi o čemu se radi znači nije pun kod:
Code:
<?php
1: $ar_values2 = array(43, 22, 17, 1, 10 => 14, 5 => 12, 77, 17 => 56);
2: echo "\$ar_values2[0] = ", $ar_values2[0], "<BR>";
3: echo "\$ar_values2[4] = ", $ar_values2[4], "<BR>";
4: echo "\$ar_values2[17] = ",$ar_values2[17], "<BR><BR>";
?>
<?php
1: $ar_values2 = array(43, 22, 17, 1, 10 => 14, 5 => 12, 77, 17 => 56);
2: echo "\$ar_values2[0] = ", $ar_values2[0], "<BR>";
3: echo "\$ar_values2[4] = ", $ar_values2[4], "<BR>";
4: echo "\$ar_values2[17] = ",$ar_values2[17], "<BR><BR>";
?>
Ovaj kod kod njih radi bez problema ali kod mene opet to neće. O čemu se radi. Znači inicijalizovali su niz ar_values2 i dali mu neke vrednosti. Znači imamo redna mesta 0, 1, 2, 3 zatim se skače na redno mesto 10 pa na redno mesto 5 zatim imamo broj 77 (koje je njegovo redno mesto?) i na kraju redno mesto 17.
U kodu se vidi da u linijama broj 2, 3, 4 štampamo određene članove niza. Linija 2 štampa nulti član niza koji je definisan i to radi bez problema. Treća linija treba da odštampa 4 član niza ali kako je on preskočen on nije definisan i ja tu dobijam grešku o nedefinisanom četvrotm članu niza (Notice: Undefined offset: 4). Kod njih taj kod radi bez problem samo što to mesto za vrednost ostaje upražnjeno i kod se izvršava dalje. Linija 4 se izvršava bez problema jer je opet član 17 niza definisan.
Znači moje pitanje. Zašto ja dobijam grešku svaki put kad se štampa promenljiva ili član niza koji nije definisan a oni ne? Zašto se i kod mene Code ne izvršava a tu ostane samo prazno mesto kao kod njih? Da li je možda problem u verziji PHP-a (moja verzija PHP v5.3.4) ili možda treba izvršiti neka podešavanja u php.ini fajlu kako bi to profunkcionisalo. Znam da sam morao da uđem u php.ini fajl kako bi omogućio korišćenje short tagova (npr. <?= umesto <?php print).
Hvala
The truth is out there and I want to believe.