Similarly, not using "" around the variables is not specific to open. "$var" creates a new variable which is the string representation of the specified variable. It's almost never needed, and it's often undesireable.
In this case, your variable is already a string, and if it wasn't. If it wasn't, it would get converted to a string automatically.
I can think of two uses for "$var":
When using a global variable as an argument. (For example, log_error("$@") is safer than log_error($@).)
When you want to explicitely specifiy the context for an overloaded object. (For example, 4 + $obj and 4 + "$obj" could have different results.) You'd only use this when you know you have an overloaded object and you know you want the string representation in a numerical, boolean or list context (i.e. never).
In reply to Re^5: Cleaner way of looping through a file and stripping only certain lines?
by ikegami
in thread Cleaner way of looping through a file and stripping only certain lines?
by texasperl
For: | Use: | ||
& | & | ||
< | < | ||
> | > | ||
[ | [ | ||
] | ] |