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: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |