globales php codeigniter codeigniter-2

php - Dónde ubicar funciones globales en codeigniter



constants php codeigniter (4)

Como dijo @david barker, puedes usar un ayudante. Cree un archivo llamado, por ejemplo, "site_helper", que contiene todas las funciones.

tenga en cuenta que necesita verificar si la función ya existe, o obtendrá un error de "función ya declarada".

Entonces, algo como:

archivo site_helper.php (en la application/helpers/ )

if(!function_exists(''h'')) { function h($value) { return htmlentities($value); } } if(!functin_exists(''other_function'') //....etc.

Y luego puede cargarlo automáticamente en config / autoload.php:

$autoload[''helpers''] = array(''site'');

^ - observe cómo solo usa la parte antes del guión bajo para llamar al archivo. Además, los ayudantes no son clases, sino una colección de funciones.

He creado algunas funciones de utilidad como una h() que actúa como echo htmlentities($var) . Quiero que estas funciones estén disponibles en todas partes. Entonces, ¿dónde lo pongo?


Debe incluir su archivo de variables globales en su archivo /application/config/constants.php. A continuación, mueva su archivo de función global a / application / helpers folder. Luego debe cargar automáticamente el archivo de funciones globales. /application/config/autoload.php

$autoload[''helpers''] = array(''your-global-function-file.php'');

Sugeriría que no se mueva nada dentro del proyecto de la carpeta del sistema, ya que la actualización sería una pesadilla absoluta. A veces refactorizar su código para cumplir con la lógica de CI, tal vez más rápido a largo plazo en lugar de intentar copiar / pegar cosas por todos lados.


Esto es exactamente para lo que son los Ayudantes.

Crea un nuevo ayudante (recuerda agregarlo a _helper.php) y ponlo en tu carpeta de ayuda.

Puede cargarlo automáticamente en su configuración (para que pueda usarlo en cualquier lugar), o simplemente cargarlo manualmente cuando sea necesario.


Use codeigniter-kint y un archivo personalizado para funciones globales. Esto te dará un resultado más útil y hermoso como:

Archivo: application / helpers / globalfunctions_helper.php

<?php /** * @file Global Helper Functions * */ if(!function_exists(''pr'')) { function pr($value=false){ $CI = get_instance(); $CI->load->library(''kint''); return @Kint::dump($value); } } if(!function_exists(''dp'')){ function dp($value=false) { $CI = get_instance(); $CI->load->library(''kint''); Kint::dump($value); die(); } }

Ver también: http://raveren.github.io/kint/