In PHP, variable and constant names are case sensitive, while function names are not.
As far as I am aware, PHP is the only language in which this happens. All other languages I have used are either totally case sensitive or totally case insensitive.
Why is PHP partially case senstive?
Please note, that I am not asking which names are case sensitive, but why.
Update
I thought I might add, for the benefit of those who think I am asking which, the following list:
Case Sensitive
Strings
Variables
Object Properties
Constants, by default
Case Insensitive
Key Words etc
Functions
Object Methods
Constants, if defined accordingly
Class Names
Note:
Classes are thus a mixed bag:
The keyword is case insensitive
Class names are case insensitive, for declaration, instantiation, and static calls
Class methods, being functions, are case insensitive
Class properties, being variables & constants, are case sensitive
Because Strings are case sensitive, anything that relies on strings, such as array keys and values, is also case sensitive
