报错 Erreur fatale : impossible de déclarer la fonction Demo2\test car le nom est déjà utilisé dans
王先生
王先生 2019-10-18 16:53:44
0
13
1589

Le même code que le professeur, erreur :

Erreur fatale : Impossible de déclarer la fonction Demo2test car le nom est déjà utilisé dans E:wwwrootphpbaseobjectnamespacetest2.php en ligne 5

code test1 :

<?php

namespace Demo1 ;

test de fonction($a,$b)

{

return $a*$b;

}

?>

code test2 :

<?php

espace de noms Démo2;

require ('test1.php');

utiliser la fonction Demo1test;

function test($a,$b)

{

return $a+$b;

}

echo test(4,5) ; / / Espace de noms non qualifié

echo "<hr>";

echo test(4,5);

?>


王先生
王先生

répondre à tous(10)
王先生

Tu es très studieux, grand frère !

老老宋

Alors je ne sais pas

老老宋

Screenshot_6.pngLe résultat final est 9

老老宋

ssss.pngfichier test2.php

老老宋

666666.pngfichier test1.php

  • répondre En fait, cela peut aussi être résolu en ajustant la position de l'appel (placez-le devant l'appel, ne rassemblez pas toutes les introductions). Il existe d'autres solutions. Je suis simplement curieux de connaître la même opération et le même code. La solution du professeur fonctionne, mais pas la mienne.
    王先生 auteur 2019-10-18 18:53:21
老老宋

test1.php et test2.php sont placés dans des dossiers Demo1 et Demo2 différents

  • répondre Je les ai mis dans deux fichiers
    王先生 auteur 2019-10-18 18:50:01
老老宋

utilisez la fonction Demo1test ; supprimez simplement cette ligne

  • répondre Ce qu'il faut, c'est importer la fonction via l'espace de noms. Quel est l'intérêt de la supprimer ?
    王先生 auteur 2019-10-18 18:30:33
王先生

Le code du professeur est de résoudre ce genre de duplication de noms. Sa démonstration n'est pas fausse, mais si nous utilisons le même code, nous nous tromperons.

老老宋

test2 lui-même a une méthode de test, puis le test1 que vous avez introduit a également une méthode de test

La même méthode existe dans le même .php, ce qui vous donnera l'erreur ci-dessus

http://php.wyscdz.com

王先生

L'erreur ci-dessus est que la version php est 7.0.12

Si vous revenez à 5.6.27, l'erreur suivante sera signalée :

Erreur fatale : appel à la fonction non définie Demo1test()

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal