Un año después, EllisLab anunció que el desarrollo de CodeIgniter continuaría bajo la dirección del Instituto de Tecnología de Columbia Británica (BCIT). Es BCIT que nos ha traído CodeIgniter 3.
CodeIgniter 3 para cumplir con los siguientes componentes importantes:
- Seguridad
- Actuación
- Integraciones de terceros
1. Seguridad: CodeIgniter 2 frente a CodeIgniter 3
En los últimos años, la seguridad se ha convertido en una gran preocupación para las aplicaciones basadas en Internet. Los hackers no solo desafían los sitios web, sino que también pueden dañar a los usuarios. La mayoría de los principales frameworks y soluciones CMS lanzan parches de seguridad regularmente para garantizar un sistema de seguridad actualizado.
- ¿Cuál es la probabilidad matemática de la felicidad?
- ¿Cómo se puede usar el razonamiento inductivo para hacer una conjetura?
- Cómo construir un currículum competitivo para una maestría en matemáticas financieras
- ¿Por qué el valor de [math] sin (\ infty [/ math] [math]) [/ math] no puede determinarse exactamente?
- ¿Cuál es el concepto de ortogonalidad?
CodeIgniter proporciona funciones de seguridad. El filtrado XSS es un ejemplo. El filtrado XSS generalmente protege de las secuencias de comandos de sitios cruzados mediante el uso de la siguiente función: $ this-> security-> xss_clean ()
CodeIgniter 2.x tenía un error en la función xss_clean. Los usuarios malintencionados ahora pueden omitir la función e inyectar secuencias de comandos entre sitios. Ellis Labs recibió muchas solicitudes para corregir este error, pero no se solucionó hasta que BCIT se hizo cargo y creó CodeIgniter 3.
Con CodeIgniter 3.x, los hackers no pueden omitir la función xss_clean para inyectar XSS. La nueva versión tiene las siguientes actualizaciones:
- Secuencias de comandos de sitios cruzados
xss_clean () - Inyecciones de encabezado
Base_url () recurrirá a $ _SERVER [‘SERVER_ADDR’], cuando $ config [‘base_url’] esté vacío para evitar inyecciones de encabezado de Host. - El ayudante CAPTCHA se cambia para usar el PRNG del sistema operativo.
- Esta nueva versión es más segura que la versión 2.x.
2. Rendimiento: CodeIgniter 2 frente a CodeIgniter 3
queremos que nuestro sitio web funcione bien, gestione la carga de muchos usuarios y les proporcione resultados de búsqueda rápidos. Para cumplir con esta expectativa, el código del sitio web debe ser optimizado.
Las funciones de código deben buscar registros inmediatamente después de realizar una búsqueda. La base de datos juega un papel importante ya que los datos se obtienen de la base de datos a través de consultas personalizadas. En resumen, las funciones de la base de datos proporcionadas por los marcos de código deben escribirse y utilizarse bien.
Cuando se trata de rendimiento, notamos algunos errores con CodeIgniter 2. CodeIgniter 3 ha ayudado al hacer las siguientes mejoras:
- Biblioteca de almacenamiento en caché: APC, Memcache se ha agregado para mejorar el rendimiento.
- El método del generador de consultas count_all_results () está arreglado para que no falle incluso cuando se usa la condición ORDER BY.
- Mejoras en el método de la base de datos.
simple_query () ha sido corregido. En versiones anteriores, esta función ejecutaba consultas sin verificar si la conexión se había inicializado.
csv_from_result () se ha optimizado para la velocidad con conjuntos de resultados más grandes . - La biblioteca se ha modificado para algunas otras correcciones de rendimiento.
3. Integraciones de terceros: CodeIgniter 2 vs. CodeIgniter 3
Una de las principales necesidades de hoy es llevar la integración de terceros al sitio web de su empresa. Las integraciones pueden incluir datos de CRM de ventas, suscripción de correo electrónico, calendario o cuentas de redes sociales. Estos pueden ser en forma de API, JSON, XML, iFrame o búsqueda directa de consultas. El marco que utiliza para desarrollar el sitio web debe ser lo suficientemente flexible como para admitirlos.
CodeIgniter siempre ha admitido integraciones con bibliotecas de terceros. Esta última versión no es la excepción. CodeIgniter 3 admite varias extensiones de archivos de terceros y bibliotecas del sistema. Los ejemplos incluyen el archivo de calendario ICS, Google Earth (kmz y kml) y PEM. Uno de los principales cambios es el soporte agregado para la configuración de configuración DSN para controladores que admiten cadenas DSN (PDO, PostgreSQL, Oracle, ODBC, CUBRID). Todo esto hace que la aplicación web funcione mejor.
Para más información :
Actualización de 2.2.x a 3.0.x