Archivo Etiqueta: Codeigniter

Método con igual nombre de la clase

Este error de PHP suele aparecer después de migrar un sitio web o cuando actualizamos la versión de PHP de nuestro servidor.

En mi caso me pasó usando el framework de PHP, Codeigniter en un sitio web el cual, luego de migrar a PHP 7, no permitia ejecutar la clase constructora base, el error es el siguiente:

Y se soluciona remplazando el nombre del constructor, por el nombre de __construct. Espero les sirva.

metodo con igual nombre que su clase

metodo con igual nombre que su clase

Methods with the same name as their class will not be constructors in a future version of PHP

Cambiando el nombre del constructor

Ventajas de usar un framework PHP Codeigniter

Cuáles son las ventajas de usar un framework PHP ?

 

En la jerga del desarrollo de software, hablar de un framework de desarrollo, es hablar de una estructura organizada conceptualmente, que nos ayuda a desarrollar software de forma organizada y mantenible. Con el paso del tiempo, la maduración y el trabajo con los diferentes lenguajes de programación, varias empresas y grupos de desarrolladores han creado frameworks para los distintos lenguajes y con enfoques particulares para el tipo de software que se va a desarrollar, ya sea web, mobile o desktop.

Para el lenguaje PHP existen varios framework que son muy populares, lo que es importante a la hora de elegir un framework u otro, por que te asegura una gran comunidad de programadores que retroalimentan cualquier duda que puedas tener, ya sea en comunidades de foros mundialmente conocidas como stakoverflow o propias de cada framework. Algunos de estos framework PHP populares son: Symfony, Laravel y Codeigniter, por nombrar solo algunos. Basicamente, estos framework nos brindan una estructura, en especial Codeigniter del cual voy a hablar, brinda un conjunto de carpetas con cierta estructura definida y archivos .php que serán la base de tu proyecto para que empieces a desarrollar con Codeigniter. Entre estos archivos te encontrarás con el archivo de configuración del proyecto, Application/config/config.php que permite por ejemplo definir la URL base de tu sitio web, la/s conexion/es a bases de datos, también en este archivo podrás conectar codeigniter a una base de datos.

Eliminar el index.php de las URLs en CodeIgniter

Eliminar Index.php de las URL en CodeIgniter

Para eliminar el index.php de las urls de nuestro sitio web desarrollado en Codeigniter (así las URL de tu sitio se verá más amigable) y éstas tenga la forma: «www.MiSitio.com«/«nombre del controlador o sección de Codeigniter«/«función» , debemos modificar el archivo routes.php y agregar el .htaccess a nuestro servidor!

El resultado será que se vean como la siguiente:

http://misitio.com/welcome

Al comenzar con cualquier proyecto con el Framework PHP CodeIgniter, el controlador que se carga por defecto y ya viene creado, es el Welcome.php y éste es al primer archivo que se accede cuando ponemos la url del sitio en el navegador donde abrimos el proyecto de CI, éste se encarga de cargar las vistas que tenga relacionadas en HTML que veremos por defecto.

Primero, para eliminar index.php de las urls en codeigniter, debemos modificar el parámetro ‘index_page’ del archivo config.php de nuestro sitio, éste archivo lo encontramos destro de la carpeta application/config dentro de la estructura de nuestro proyecto Codeigniter. Deberia verse de la siguiente manera:

$config[‘index_page’] = »;

Codeigniter index url

Codeigniter index url

Luego de modificar éste archivo y guardarlo, creamos el archivo .htaccess en la raíz de nuestro sitio y le agregamos las siguientes líneas.

En la línea RewriteBase debemos poner la ruta a nuestro sitio. En caso de ser el root del servidor, debemos ponerlo como se ve a continuación:

# PROGRAMERTECH

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /sitioweb
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
</IfModule>
<IfModule !mod_rewrite.c>
ErrorDocument 404 /codeigniter/index.php
</IfModule>

Una vez echo esto, tenemos que asegurarnos que el modulo rewrite del servidor Apache donde tenemos corriendo nuestro sitio está cargado, y que en la configuración del sitio (archivo /etc/apache2/sites-enabled/000-default por defecto) tenemos el parámetro AllowOverride a all para nuestro root del servidor.

Si hemos hecho todo bien ahora deberiamos haber eliminado el index.php de Codeigniter:

Estás serían las URLs:

http://misitio.com/

http://misitio.com/welcome