PHP donne des erreurs fatales lorsque les utilisateurs essaient d'utiliser une classe non définie et il n'y a pas une fonction __ autoload correctement nommée pour le remplir. PHP chargement automatique des conflits surviennent lorsque plus d'une fonction de chargement automatique est définie en dehors d'une bibliothèque PHP , ne peut pas trouver des classes ou SOAP référencés protocoles sont utilisés. PHP Classes
PHP programmeurs peuvent placer les classes utilisées par le programme dans un fichier du répertoire distinct. Cela permet aux programmeurs d'ajouter de nouvelles classes à l'exécution. Classes distinctes existent pour différents types de données, tels que les employés, les numéros de compte des clients et des pièces d'équipement suivis dans une base de données . Chaque fichier de classe se termine par. Class.php . Un annuaire de l'équipement pourrait être nommé equipment.class.php . Le require_once () déclaration permet au fichier de classe pour être utilisé par les scripts. Au lieu d'exiger des programmeurs d'entrer plusieurs déclarations au début d'un script pour chaque type de classe , PHP permet classe chargement automatique .
Autoloading erreurs
Lorsque PHP ne reconnaît pas une classe, il cherche la fonction __ autoload . Selon «Core programmation PHP , " si elle existe PHP appelle cette méthode avec un seul paramètre, qui est le nom de la classe parce que PHP suppose que la définition de la classe est stockée dans un fichier qui commence par le nom de la classe. Quand une classe de l'élève est utilisé , PHP suppose que le fichier class_student.php contient la définition de classe de l'élève. Si le fichier est nommé class_fifthgrade.php place , par exemple , le script PHP ne sera pas le trouver et l'échec.
Classe erreurs de nom
La fonction de chargement automatique ne fonctionne correctement que si la classe est définie plus tard dans le script. Si la classe n'est pas définie plus tard dans le programme , la fonction de chargement automatique va générer des erreurs . Si le fichier de classe est absente, la fonction de chargement automatique échouera. Utilisez des chaînes pour désigner les classes dynamiquement plutôt que de modifier ou de remplacer le fichier de classe alors que le processus fonctionne . Ajout de la fonction include () permet à PHP pour créer une nouvelle classe et prévenir les conflits .
PHP Autoloading conflits
La fonction __ autoload ne peut être définie dans un processus PHP. PHP chargement automatique des conflits se produisent lorsque la fonction est définie plusieurs fois ou modifié au cours du processus . "PHP objets, Patterns and Practice " suggère d'utiliser la fonction spl_auotload_register pour changer la fonction de chargement automatique dynamiquement. A PHP Library ou SPL standard permet aux utilisateurs de définir et enregistrer plusieurs fonctions autoloading sans violer la définition de chargement automatique simple par la règle de procédure . Chaque fonction de chargement automatique utilisé dans le procédé doit être déclaré et enregistré auprès de la SPL avant l'instruction require_once est utilisé.
SOAP extension conflits
protocoles SOAP
définissent la construction utilisée pour l'échange de messages . PHP version 5 a une extension SOAP native. NuSOAP est un procédé orienté objet de générer des messages . La version PHP 5 extension de conflits SOAP avec la classe NuSOAP . Le conflit est résolu en désactivant les extensions SOAP natif de PHP version 5.