I understand that the underscore _
is an acceptable character for naming variables / functions / classes etc. However I was wondering if there are any other special
If you check the docs on variables it says that:
Variable names follow the same rules as other labels in PHP. A valid variable name starts with a letter or underscore, followed by any number of letters, numbers, or underscores. As a regular expression, it would be expressed thus: '[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*'
But basically people have agreed to only use a-zA-Z0-9_
and not the "fancy" names since they might break depending in the encoding one uses.
So you can have a variable that is named $aöäüÖÄ
but if you save that with the wrong encoding you might run into trouble.
The same goes for functions too btw.
So
function fooööö($aà) { echo $aà; }
fooööö("hi"); // will just echo 'hi'
will just work out (at least at first).
Also check out:
Exotic names for methods, constants, variables and fields - Bug or Feature?
for some discussion on the subject.