> I don't think it is about readability:
> 
> $arr[3] = 'test';
> $test = 3;
> 
> //This prints "$test"
> echo "This doesn't work: $$arr[3]";
> 
> //This prints 3
> echo "This works: ${$arr[3]}";
> 
> Using the same type way as before in this thread.

Above example is a classic one where readability and maintainability deal well 
together.

First of all everything works as expected but obviously you need to know what 
you need.

It is ambiguous to write $$arr[3] ... what do you expect?

Did you mean the variable derived by $arr[3]?
echo "This works: {$$arr[3]}";
since curly brackets make the meaning of the expression explicit, it will be 3 
indeed.

What is the less ambiguous, readable, easy to maintain, way to obtain that 
result?

echo "This works: {${$arr[3]}}";

If our aim is to get the variable with name equal to the value of $arr[3]

Can you see now why I am talking about good practice? Zero ambiguity, and 
that's how I like to code

Regards
                                          
_________________________________________________________________
Windows Live: Friends get your Flickr, Yelp, and Digg updates when they e-mail 
you.
http://www.microsoft.com/middleeast/windows/windowslive/see-it-in-action/social-network-basics.aspx?ocid=PID23461::T:WLMTAGL:ON:WL:en-xm:SI_SB_3:092010

Reply via email to