Flash Vista - Home
Newest Cool Site
The Two Tales
Site info | Archive
Main Navigation
Home
Nuovi siti
I più votati
I più popolari
Scelto dalla redazione
Ricerca

Flash Tutorials
Flash Resources
Flash News
Flash Templates
Flash Intro Templates
Website Templates
Flash Games
Flash Books
FlashVista Polls
Sitemap


Random Link
French
Geoffroy Demarquet - Graphic Design
Site info | Get another
FlashVista
Login
Registrati
Iscriviti

Aggiungi un sito
Modifica un sito
Favorites
Suggerisci una categoria

Advertise with us
Support us
Credits / Thanks
Contact

Flash Templates:

More Templates ...

Mailing List
Utente

Password



Registrati
Forgot password?
Partner websites
Free Hit Counter
Free Seo Tools
Free Tutorials
Free Video Tutorials
Forum signatures
Best Free Scripts
Wii Fit
Wii Fit News
Cool Tech Gadgets
Other Resources
Suggerisci
Suggerisci questo sito ad un amico


Mailing List
Stato: Login non eseguito

Italiano English German French Spanish Italian Portuguese Russian Polish Finnish Dutch Swedish Thai Romanian Traditional Chinese Simplified Chinese
RicercaLogin non eseguito
Keyword: Ricerca per: Ricerca avanzata


Variable variables in Flash actionscript


NEW Flash Tutorials in Video Format - Powered by LearnFlash.com: 45 minutes of flash tutorials now available in streaming format or download. Topics Include flash for beginners, text effects, actionscripting, audio/video, flash 8 and more.


Printer version



by Mirza Hatipovic

I often make use of variable variables, because I generally use interpreted languages like PHP. Variable variables are not supported in compiled languages like C++ etc. The same applies for Actionscript. Because I make extensive use of variable variables in PHP, I had some difficulties solving specific problems in Actionscript. Fortunately I found a trick to solve my problem. But before I show you the sample script I will give a short introduction to variable variables in PHP.

Sample PHP script:

//my_var has a string value of “mirza”
$my_var = “mirza”;
//allocate a variable variable of the variable $my_var
$$my_var = 1;
//the upper line of code now has the same meaning like $mirza = 1; !!!


In words, with variable variables you can dynamicaly create variable names and give them values!!!

Now on to Actionscript...

With eval() you can achieve similar results in AS.


//my_var has a string value of “mirza”
my_var = “mirza”;
//allocate a variable variable of the variable my_var
mirza = 1;
//has a value of 1
trace(eval(my_var));

Well, I know that this looks very strange. But I use this method in loops to dynamically create variables like pic1, pic2, pic3.

for(i = 1; i<=5; i++){
//current variable
curr_var = eval(pic + '' + i);
//handle variable…pic1, pic1, etc
}


Hope you’ll find it usefull.


(Aggiunto: 11-04-2003, Contatti: 0, Giudizio: 2.78, Voti: 32, Recensioni: 4)
Add to Favorites Suggest to a Friend

Recensioni: (4)

Good Tutorial
(Aggiunto: 12-20-2005 Utente: Guest)

But it is very usefull if you want to insert arrays into flash with javascript which you can't do directly. But if you set each var like: array[1] => array1 then you can use this function to get your original array back.
(Aggiunto: 02-19-2005 Utente: Guest)


for(i = 1; i<=5; i++){
//current variable
curr_var = eval(pic + '' + i); _root.addProperty("pic" + i, get, set);
//handle variable…pic1, pic1, etc
setProperty("_root.pic" + i, value, "Value: " + i);
}

//===>

for (i = 1; i<= 5; i++) {
trace(eval("_roo.pic" + i));
}

(Aggiunto: 02-04-2005 Utente: Guest)

Much as this tutorial offers useful advice, it is very bad programming practise to do what is done above.

Use arrays instead. Eval was put in actionscript before arrays were put in. Between arrays and ["property"] eval is practially useless. It is only needed in advanced techniques.

(Aggiunto: 05-25-2004 Utente: Guest)


Invia una recensione
Please note:
We review EVERY comment before it appears on the site, so please dont waste your time by posting spam links :)
No URLs allowed, no HTML please.

If you register or login first, your review will contain your nickname


Votalo



Eccellente!
Molto buono
Buono
Piacevole
Mediocre