Buenos días:
Hemos actualizado nuestras webs a la última versión de Joomla y hemos cambiado el PHP de nuestro hosting a la versión 7 (probamos con las dos versiones superiores, pero nos cargaba las páginas en blanco)
La cuestión es que revisando el error_log, hemos podido corregir varrios problemas de PHP Deprecated producidos por diferentes plugins, desinstalándolos, sustituyéndolos o actualizándolos, pero ahora nos queda un último error de la propia plantilla (Encelado), que os muestro a continuación:
[16-Oct-2018 08:12:30 UTC] PHP Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; Color has a deprecated constructor in /home2/quieromi/public_html/test.crist/templates/cristalauto/features/color.php on line 11
El código que aparece en el archivo color.php es el siguiente:
11 class Color { 12 13 function Color($hex){ 14 $this->color = $hex; 15 }
Todo el código aparece en color gris claro, excepto la parte final "color = $hex;", que aparece en negro.
Aunque la web, a priori funciona bien, preferiría eliminar ese error, si fuera posible. ¿Podéis orientarme sobre cómo solucionar este tema.?
¡¡Muchas gracias por vuestra ayuda!! 😉
URL del sitio: Contenido solo visible a usuarios registrados
Hola Mickey
El aviso lo que indica es que en versiones futuras de PHP la función con clases ya no se implementa, en tu caso hay que modificar function Color($hex){ por function __construct ($hex).
Esto lo tienes que realizar en todas las funciones con clases que tengas en el archivo.
Tienes información en este enlace:
-> http://php.net/manual/en/language.oop5.decon.php
Un saludo
Un millón de gracias, Pepe, es justo lo que necesitaba saber 🙂
Con la información que me das, creo que podré solucionarlo.
Te daré un poco la lata a lo largo del día, porque sigo revisando otros dos sitios webs que tenemos y me aparecen algunos errores más de PHP, pero para estos haré otras consultas.
¡Gracias de nuevo! ¡Sois unos cracks!
¡¡¡¡Genial!!!
Colocándol así en el archivo...¡Todo solucionado!
class Color {
function __construct ($hex){
$this->color = $hex;
}
Hola Mickey.
Nada un placer poder ayudaros en lo que nos sea posible.
Ya sabes cualquier consulta que tengas no dudes en comunicarlo.
Cerramos el tema
Un saludo