¿Cuál es el propósito de "Get Instance" en Codeigniter? ¿Cómo le explicaría esto a un principiante total?Codeigniter: Get Instance
Respuesta
Ok, así que todo en CodeIgniter corre a través de la variable de $this
súper mágica. Esto solo funciona para clases, ya que $this
básicamente define la clase actual.
Su controlador es una clase, por lo que $ esto es que hay, que le permite hacer $this->load->model('whatever');
En los modelos, que también se utiliza una clase. Es ligeramente diferente aquí, ya que $this
solo contiene elementos útiles a medida que se extiende desde el Modelo. Aún así, $this
sigue siendo válido.
Cuando está utilizando un ayudante o una biblioteca, es necesario encontrar que "ejemplo" o $this
equivalente.
$ci =& get_instance();
... hace $ci
contienen exactamente el mismo material/código/utilidad como $this
, a pesar de que usted no está en una clase, o no en una clase que hereda.
Esa es una explicación para el total de principiantes después de 2 pintas, por lo que es incorrecta o está bien. ;-)
Es una implementación del singleton pattern. Básicamente, solo hay una instancia de la clase en cuestión, que está diseñada para ser accesible globalmente. El método get_instance
es estático y proporciona una forma de acceder a la instancia desde cualquier parte de su código.
No es suficiente. ¡Soy un SUPER NOOB! :) –
@Kevin: En ese caso, recomiendo que empiece a leer sobre programación orientada a objetos (OOP) antes de profundizar en un marco que se basa en él. –
¡Lo haré, lo haré! –
- 1. Java Static vs Instance
- 2. Validación de CodeIgniter: ¿posible validar cadenas de consulta GET?
- 3. Instance Show para la función
- 4. Ruby Instance Variable Scope Pregunta
- 5. Accediendo a Heroku Postgres Instance desde EC2
- 6. Obtiene las variables attr_accessor/instance en ruby
- 7. Static Vs Instance Method Performance C#
- 8. C# Instance Constructor vs Static Constructor
- 9. "make single instance application" ¿qué hace esto?
- 10. Agregar EBS a Ubuntu EC2 Instance
- 11. Django ForeignKey Instance vs Raw ID
- 12. CodeIgniter: Pasar variables a través de URL - alternativas a usar GET
- 13. Codeigniter $ this-> db-> get(), ¿cómo devuelvo valores para una fila específica?
- 14. ¿Cómo enviar un formulario post-método al mismo get-url en función diferente en CodeIgniter?
- 15. curl -GET y -X GET
- 16. Hibernate NoSuchFieldError INSTANCE pero solo con Struts 1?
- 17. GET y POST en cakephp
- 18. Salir CodeIgniter
- 19. Codeigniter global_xss_filtering
- 20. CodeIgniter + CSS
- 21. Enrutamiento CodeIgniter
- 22. Volumen de Etage de automóvil en Amazon EC2 Windows Instance
- 23. Adjuntar EBS durante el inicio de Amazon EC2 Spot Instance
- 24. variables estáticas/instance rendimiento de la operación de Java
- 25. Google App Engine frontend Instance Hours Límite alcanzado
- 26. EC2 Java Api Espere hasta que se cree Ec2 Instance.
- 27. JDBC get/setObject vs. get/setSpecificType
- 28. Clases personalizadas en CodeIgniter
- 29. CodeIgniter: ¿devuelve solo una fila?
- 30. Codeigniter - Ordenar registro activo alfabéticamente
2 pintas, ¿eh? Entonces, ¿cuál es la utilidad de una biblioteca/ayudante? ¿Por qué no usar modelos? –
Por supuesto, dado que todo es una clase PHP, PUEDES poner lo que quieras donde quieras. En términos generales, en CodeIgniter se desglosa como "interacción de base de datos/lógica de negocios" = modelos, las funciones simples van en ayudantes y las clases generales son bibliotecas. –