Herramientas de usuario

Herramientas del sitio


informatica:programacion:php:frameworks:codeigniter_3

¡Esta es una revisión vieja del documento!


CodeIgniter 3

Framework de PHP.

Para consultar notas sobre la versión actual, existe otra página.

Modelo Vista Controlador

CodeIgniter sigue el paradigma de programación Modelo-Vista-Controlador.

  • Modelo: datos
  • Vista: resultado visual
  • Controlador: intermediario entre los datos y la presentación.

Modelo

application/models

class Nombre_modelo extends CI_model {
    function __construct() {
        parent::__construct();
        $this->load->database();
    }
}

Configuración

Nginx

server{
...
    location / {
        try_files $uri $uri/ /index.php?/$request_uri;
    }
...
}

Si estuviese en un subdirectorio, por ejemplo, ci:

server{
...
    location /ci {
        try_files $uri $uri/ /ci/index.php?/$request_uri;
    }
...
}

Componentes

Helpers

Colección de funciones relacionadas.

Una vez cargados, los helpers están disponibles globalmente en los controladores y vistas.

Se almacenan en:

  • system/helpers: incluidos en CodeIgniter
  • application/helpers: creados por el usuario.

Carga

$this->load->helper('nombre_helper');

Por ejemplo, si queremos cargar un helper llamado url_helper.php:

$this->load->helper('url');

Se pueden cargar varios a la vez:

$this->load->helper(
        array('helper1', 'helper2', 'helper3')
);

Si queremos que algún helper esté disponible para toda la aplicación, añadimos el helper al array de application/config/autoload.php

Extender

Si queremos ampliar algunos de los helpers, lo creamos en application/helpers con el mismo nombre, pero añadiéndole el prefijo my. Este prefijo se puede configurar en application/config/config.php:

$config['subclass_prefix'] = 'MY_';

Depuración

CodeIgniter cuenta con la clase Profiler que permite mostrar resultados de rendimientos, consultas ejecutadas y la información de $_POST en la parte inferior de la página. Esto resulta muy útil durante el desarrollo de una aplicación para ayudar en la depuración y optimización.

Podemos activar el profiler en el método que queramos de la siguiente manera:

$this->output->enable_profiler(TRUE);

Query Builder

Utilidades para interactuar con la base de datos

Múltiples condiciones en WHERE

$array = [
    'name'   => 'Joe', 
    'title'  => 'Boss', 
    'status' => 'active'
];
 
$this->db->where($array); 

Lo que hace es :

WHERE name = 'Joe' AND title ='Boss' AND status = 'active'

Utilidades

Última consulta a base de datos ejecutada

Si queremos ver el contenido (no el resultado) de la última consulta a base de datos que se ha lanzado:

$this->db->last_query();

Devolverá algo similar a:

SELECT * FROM tabla ...
informatica/programacion/php/frameworks/codeigniter_3.1666187995.txt.gz · Última modificación: por tempwin