usadas predefinidas parametros otro mas manejo llamar funciones funcion ejemplos desde php function case-sensitive

predefinidas - llamar funcion php desde otro php



¿Las funciones de PHP son sensibles a las may (8)

En conclusión de la respuesta de todos. A pesar de que PHP no requiere la coherencia de mayúsculas y minúsculas en todas las instancias, incluso hasta ahora en PHP5.

La mejor práctica será

utilice siempre los mismos casos cuando haga referencia a cualquiera de las variables (es ''obligatorio'') o funciones (es ''opcional, pero recomendado).

Nunca se sabe que tal vez un día se supere la votación y se ahorrará toda la pesadilla de cambiar casos en sus aplicaciones hace un par de años que requieren actualización en PHP.

Espero que ayude de todos modos.

Estaba buscando algún código y encontré algunas llamadas a mySQL_fetch_array . ¿Es el caso de PHP sensible a los nombres de las funciones? Recuerdo haber leído esto en alguna parte, pero parece que no puedo encontrar ninguna referencia al respecto.


En las variables PHP, las mayúsculas y minúsculas distinguen entre mayúsculas y minúsculas, pero las funciones no tienen problemas como este. Puede usar las siguientes declaraciones para mostrar resultados, todos mostrarán el mismo resultado.

<?php Echo "This is a test script"; ECHO "This is a test script"; echo "This is a test script"; ?>

Por otro lado, si cambia la sensibilidad de mayúsculas / minúsculas de las variables, entonces mostrará el error.

Ejemplo:

<?php $a=5; echo $A;// It will show the error. ?>

Salida:

Notice: Undefined variable: A in C:/xampp/htdocs/test.php on line 3


Estoy citando de this :

Nota: Los nombres de las funciones no distinguen entre mayúsculas y minúsculas, aunque suele ser una buena forma de llamar a las funciones tal como aparecen en su declaración.

Por lo tanto, parece que las funciones definidas por el usuario no distinguen entre mayúsculas y minúsculas, hubo una vote para hacer que las funciones / objetos en PHP5 distingan entre mayúsculas y minúsculas.


No, no distinguen entre mayúsculas y minúsculas, sin embargo, siempre debe usar el caso que está en el manual para mayor coherencia.

Sin embargo, las variables son sensibles a las mayúsculas.


Puede ser que sea demasiado tarde, pero ...

Todo el mundo ya lo sabía: el motor PHP no se preocupa por el caso de las letras.

Y está el voto sobre el bugtracker PHP, donde la mayoría dice: "Sí, soy sensura pro case".

Pero estoy en contra, porque en mi marco MVC, llamo acción de controlador:

$currentController = new $controller($parameters); $currentAction = $currentController->{$action}();

$ controlador y $ action se toman de la URL tal como está.

Piensa, si un usuario publica un enlace a mi sitio: https://my-site/MyPartnerController/MyPartnerGallery

mientras que la clase se llama myPartnerController ...

Significa que nadie gana esta página si las clases de PHP y los nombres de las funciones distinguen entre mayúsculas y minúsculas.

Sí, siempre uso todos los nombres en el código declarado. Pero rezo para que nunca hagan que las funciones y los nombres de las clases sean sensibles a las mayúsculas y minúsculas.

¡Gracias!


TL; DR: los nombres de las clases no distinguen entre mayúsculas y minúsculas, pero usan siempre el mismo caso que en la declaración (lo mismo que con las funciones). Además, crear instancias de clases con diferentes casos tal como se definieron puede causar problemas con los cargadores automáticos.

Además, los nombres de las clases no distinguen entre mayúsculas y minúsculas:

<?php class SomeThing { public $x = ''foo''; } $a = new SomeThing(); $b = new something(); $c = new sOmEtHING(); var_dump($a, $b, $c);

Esto produce:

class SomeThing#1 (1) { public $x => string(3) "foo" } class SomeThing#2 (1) { public $x => string(3) "foo" } class SomeThing#3 (1) { public $x => string(3) "foo" }

El problema es usar autocargadores y sistemas de archivos sensibles a mayúsculas y minúsculas (como ext2 / 3/4), ya que debe llamar al nombre de la clase con el mismo nombre que el archivo que contiene la clase (no cómo el nombre de la clase está encasillado). o use strtolower :

El archivo de clase:

<?php // filename something.php class SomeThing { ... }

La función autocargador ( __autoload o una función para registrar con spl_autoload_register )

function my_autloader($className) { $filename = CLASSES_DIR . DIRECTORY_SEPARATOR . $className . ''.php''; if (file_exists($filename)) { require($filename); } }

Ahora con este código:

$a = new something(); // works $b = new SomeThing(); // does not work $c = new SOMETHING(); // does not work

Puede hacer este trabajo (es decir, tener nombres de clase insensibles a las mayúsculas y minúsculas utilizando un autocargador) si agregó una llamada a strtolower() en el código del autocargador, pero al igual que con las funciones, es mejor hacer referencia a una clase de la misma manera que se declara, tiene el nombre de archivo con el mismo caso que el nombre de clase, usa cargadores automáticos y olvida usar strtolower y los "me gusta".


Y los nombres de métodos también distinguen entre mayúsculas y minúsculas. p.ej:-

<?php class C { public function method() { } public function METHOD() { } }

salida:

PHP Fatal error: Cannot redeclare C::METHOD() in ....php on line 6


No.

Las funciones PHP no son sensibles a mayúsculas y minúsculas