Espace membres

Bonjour Anonyme

Inscription

Email :
Mot de passe :

Mot de passe oublié ?

Nos scripts

MySpeach

MySpeach est un chat php sans base de donnée, rapide, léger et facile à prendre en main. DEMO

MyPHPUpload

MyPHPUpload est un script d'upload sécurisé écrit en PHP. DEMO

GrapAgenda

Agenda PHP et MySQL avec comptes utilisateurs et administration. DEMO

Livre PHP

création de site

Fatal error: Cannot redeclare function

Cours / tutoriel écrit le 01-07-2010 par sky
Fatal error: Cannot redeclare function

Vous qui débuté (ou pas ?) en PHP avez déjà rencontré l'erreur : "Fatal error: Cannot redeclare function"

Cette erreur signifie qu'une fonction portant le même nom existe déjà dans le programme.

La plupart du temps, c'est parce que que votre script ce retrouve englobé dans un plus gros qui a déjà une fonction qui porte le même nom.

Il existe une façon très simple d'éviter cette erreur : tester si la fonction existe déjà avec la fonction PHP function_exists()

Exemple :
<?php
if(!function_exists('maFonction'))
{
    function maFonction($argument)
    {
        return $argument;
    }
}
?>


En gros, on pourrais dire ceci : Si la fonction maFonction n'existe pas, alors maFonction...

Vous pouvez aussi retrouver la même chose pour les classes (class_exists()), interfaces (interface_exists()), peut être même d'autre que je ne connais pas.


L'arrivée des "namespaces" qui sont dors et déjà là avec PHP 5.3.0 permettra d'éviter les collisions de nom.

Commentaires

Belebel le 11-06-2012

Mec t'es génial, tu m'a résolu mon problème. Thanks.

Pseudo
Email
Commentaire

Merci d'écrire le code ici :