Las funciones y los métodos de PHP no distinguen entre mayúsculas y minúsculas, como se ilustra en el siguiente ejemplo.
function ag()
{
echo '2';
}
Ag();
class test {
function clMe()
{
echo 'hi';
}
}
$instance = new test;
$instance->clme();
Pero ese no es el caso con las variables. ¿Cuál es la razón fundamental?
php
syntax
case-insensitive
user198729
fuente
fuente
class Share{ share($str){ echo $str; } } $sh = new Share(); $sh->share("string");
Es posible que se sorprenda al ver dos llamadas a la función compartir ($ str). primero debido a c'tor y segundo llamado explícito por las mismas razones !!Respuestas:
Permítanme citar de la entrevista: el creador de PHP, Rasmus Lerdorf
He leído en alguna parte que, dado que todas las funciones introducidas se sentían esencialmente como etiquetas en un documento HTML y dado que las etiquetas HTML no distinguen entre mayúsculas y minúsculas, eligió los nombres de las funciones en PHP para que no distinga entre mayúsculas y minúsculas. Posteriormente, esta característica se mantuvo en el idioma.
fuente
Sí, los nombres de las funciones y los métodos no distinguen entre mayúsculas y minúsculas.
Y sí, los nombres de las variables distinguen entre mayúsculas y minúsculas.
No estoy seguro de que haya una razón para eso, excepto que ha sido así durante mucho tiempo y, por lo tanto, sigue siendo el caso, por razones de compatibilidad con versiones anteriores.
Como referencia, un par de enlaces / citas a varias páginas del manual:
Para funciones ( citando ) :
Y los métodos no son mucho más que funciones en objetos, especialmente cuando pensamos en PHP 4 y la compatibilidad con versiones anteriores.
Y, para variables ( citando ):
Y las propiedades de los objetos no son mucho más que variables en los objetos: el mismo comentario sobre PHP 4 y la compatibilidad con versiones anteriores.
fuente