Funciones estáticas de PHP




Clases

En PHP, una declaración de clase normalmente tiene un nombre, variables y funciones. El código externo a la clase puede crear instancias de objetos que tienen su propia implementación de variables y funciones descritas en la declaración. En la mayoría de los casos, el código necesario para crear un objeto de una clase para llamar a sus funciones - a veces conocido como métodos - en línea con otros lenguajes de programación utilizados para el desarrollo orientado a objetos. Con funciones estáticas, este no es el caso, ya que las aplicaciones pueden acceder a la funcionalidad con referencia a la propia clase.

Funciones

Cuando " código de cliente " necesidad de llamar a una función de la clase, puede hacerlo mediante la creación de una instancia de una clase de objeto antes de llamar a la función en esa instancia. El código de ejemplo ilustra esto:
$ Helper Helper = new ();
$ Helper-> doSomething ();



Este código llama a un método llamado doSomething , que aparece en la declaración de clase para " Helper " dentro de la aplicación. Si una función se declara como estática, código externo no es necesario para llevar a cabo la primera línea, en la que se crea una instancia de la clase.

Llamar a funciones estáticas

Para llamar a una función estática dentro de una aplicación PHP, el código se puede utilizar el nombre de la clase:
Helper :: doSomethingStatic ();

Este código debe llamar a un método especificado en la declaración de clase para " Helper " la siguiente manera:
función estática pública doSomethingStatic () {
/ / Método de ejecución
}

Esto permite que el código para acceder a las características generalmente asociadas a una clase y de su área de responsabilidad dentro de la aplicación. E 'también puede llamar a funciones que utilizan instancias de objetos estáticos de clase si el programa tiene los mismos en cualquier caso, pero no hay ningún punto en la creación de un objeto si la única función que necesita es estática.

Utilizar

Funciones estáticas pueden ser utilizados eficazmente sólo si el actual proceso no depende de los datos contenidos en una instancia de la clase. Muchos métodos de clase de uso de los datos específicos de una instancia de clase, en cuyo caso la ejecución depende de la presencia de una instancia de la clase existente. Las funciones estáticas no dependen de instancias de clases, por lo tanto, no pueden utilizar las variables previstas sólo para los casos, tales como los indicados con un método constructor de la clase. Al implementar los métodos estáticos, los programadores deben tener en cuenta todas las variables de la clase que se crean instancias cuando se crean los objetos de la clase.



Deja un comentario