PHP da errores fatales cuando los usuarios intentan utilizar una clase no definida y no hay una función __ autoload debidamente nombrado para llenarlo. Surgen conflictos PHP autocarga cuando más de una función de carga automática se define fuera de una biblioteca de PHP , no puede encontrar clases referenciadas o jabón se utilizan protocolos. Clases de PHP
PHP programadores pueden colocar las clases utilizadas por el programa en un archivo de directorio independiente. Esto permite a los programadores agregar nuevas clases en tiempo de ejecución . Existen clases separadas para los diferentes tipos de datos, tales como los empleados , números de cuenta del cliente y piezas de equipo de seguimiento en una base de datos. Cada archivo de clase termina con . Class.php . Un directorio de equipo podría ser nombrado equipment.class.php . El require_once () declaración permite que el archivo de clase para uso de scripts. En lugar de exigir a los programadores a escribir varias declaraciones en el inicio de una secuencia de comandos para cada tipo de clase , PHP permite la carga automática de clases .
Autoloading errores
Cuando PHP no reconoce una clase , busca la función __ autoload . De acuerdo con " Core PHP Programming , " si es que existe PHP lo llama con un único parámetro , que es el nombre de la clase debido a que PHP asume que la definición de clase se almacena en un archivo que comienza con el nombre de la clase . Cuando se utiliza una clase de estudiantes , PHP asume que el archivo class_student.php contiene la definición de clase de los estudiantes. Si el archivo se llama class_fifthgrade.php lugar , por ejemplo , el script PHP no encontrarlo y fallar.
Clase Errores Nombre
La función de carga automática sólo funciona correctamente si la clase se define más adelante en el script. Si la clase no se define más adelante en el programa , la función de carga automática va a generar errores . Si el archivo de clase no se encuentra, la función de carga automática fallará. Use strings para hacer referencia a las clases de forma dinámica en lugar de editar o reemplazar el archivo de clase mientras se ejecuta el proceso. Adición de la función include () permite a PHP para crear una nueva clase y prevenir los conflictos .
PHP Autoloading conflictos
La función __ autoload sólo puede definirse en un proceso PHP. PHP conflictos carga automática se producen cuando la función se ha definido más de una vez o se cambia durante el proceso. "Php objetos, patrones y prácticas ", sugiere el uso de la función spl_auotload_register para cambiar la función de carga automática dinámica. A PHP Library o SPL estándar permite a los usuarios definir y registrar múltiples funciones de carga automática sin violar la definición única carga automática por regla proceso. Cada función de carga automática utilizada en el proceso debe ser declarado y registrado con el SPL antes de utilizar la declaración require_once .
Extensión SOAP Conflictos
protocolos de SOAP
definen el constructo utilizado para intercambio de mensajes. PHP versión 5 tiene una extensión SOAP nativa. NuSOAP es un método orientado a objetos de generar mensajes. La versión de PHP 5 JABÓN conflictos de extensión con la clase NuSOAP . El conflicto se resuelve mediante la desactivación de extensión SOAP nativa de PHP versión 5.