M-am gandit ca ar fi cazul sa tratez un subiect ceva mai delicat decat ar putea parea la prima vedere. Va spuneam la un moment dat, ca in ColdFusion unele lucururi au fost implementate putin diferit fata de metodele conventionale.
Unul din aceste lucruri este obiectul Array()
. Vom vedea pe parcursul articolului ce trebuie sa stim atunci cand folosim array-urile in ColdFusion.
Este vorba despre index-ul implicit al array-ului. Ce inseamna asta? In cea mai mare parte a limbajelor de programare, array-urile incep cu index zero. Sa luam un exemplu in PHP:
<?php $arrVar = array(); $arrVar[0] = "Item One"; $arrVar[0] = "Item Two"; echo"<pre>"; print_r($arrVar); exit; ?>
Codul de mai sus va avea urmatorul rezultat in browser:
Array ( [0] => Item One [1] => Item Two )
Dupa cum se poate vedea, atunci cand nu se specifica niciun index, array-ul porneste de la zero.
Iata ca in ColdFusion lucrurile nu se mai intampla asa. Acelasi cod transpus in ColdFusion, va arata asa:
<cfset arrVar = ArrayNew(1) /> <cfset ArrayAppend(arrVar, "Item Unu") /> <cfset ArrayAppend(arrVar, "Item Doi") /> <cfset ArrayAppend(arrVar, "Item Trei") /> <cfdump var=#arrVar# />
Iar rezultatul ar arata asa:
Dupa cum vedeti, aici array-urile pleaca implicit de la index-ul unu. Mai mult, daca incercati sa faceti referinta la arrVar[0]
, nu veti putea. Acest index nu exista.
Aceasta ar fi pe scurt povestea lucrului cu array-uri in ColdFusion. Tineti cont de ce v-am spus si nu va lasati atrasi in capcana obisnuintei din alte limbaje.