Projet

Général

Profil

Actions

Anomalie #645

fermé

Bug dans lib\Galette\Entity\Contribution.php

Ajouté par Mélissa Djebel il y a plus de 11 ans. Mis à jour il y a plus de 11 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
Catégorie:
Core
Version cible:
-
Début:
11/07/2013
Echéance:
% réalisé:

100%

Temps estimé:
Version utilisée:

Description

Il manque un '\' avant Exception aux lignes :
- 346
- 349
- 984
- 987

throw new \Exception('Incorrect format')
catch (\Exception $e)

Fichiers

Contribution.php (33,9 ko) Contribution.php Fichier corrigé (version 0.7.4.5) Mélissa Djebel, 11/07/2013 20:50

Mis à jour par Johan Cwiklinski il y a plus de 11 ans

  • Catégorie mis à Core
  • Assigné à mis à Johan Cwiklinski

Mis à jour par Johan Cwiklinski il y a plus de 11 ans

  • % réalisé changé de 0 à 100
  • Statut changé de Nouveau à Résolu

Mis à jour par Johan Cwiklinski il y a plus de 11 ans

Je ne pense pas sortir une nouvelle release 0.7.4.x (il n'y a pas matière à pour le moment de toutes façons) ; c'est donc corrigé uniquement dans la branche develop actuellement donc.

Mis à jour par Johan Cwiklinski il y a plus de 11 ans

  • Statut changé de Résolu à Fermé

Mis à jour par Roland Telle il y a plus de 11 ans

Galette v0.7.5dev.

Il semblerait que quelques \ aient échappé à la sagacité des chasseurs d'antislashes :-)

Dans Entity/Contribution.php, lignes 351 et 1146,
Dans Entity/Transaction.php, ligne 263

Dans Repository/Groups.php, ligne 348, il y a un espace avant le \ (j'ignore si ça fâche ...)
Dans Reposiroty/Members.php, ligne 1398, même remarque

Dans install/index.php, lignes 423 et 1016

et aussi un peu partout dans les "includes" au point que je me demande si c'est dérangeant ? ;-)

Mis à jour par Johan Cwiklinski il y a plus de 11 ans

Roland Telle a écrit :

Galette v0.7.5dev.

Il semblerait que quelques \ aient échappé à la sagacité des chasseurs d'antislashes :-)

Dans Entity/Contribution.php, lignes 351 et 1146,
Dans Entity/Transaction.php, ligne 263

Bien vu, merci :)

Dans Repository/Groups.php, ligne 348, il y a un espace avant le \ (j'ignore si ça fâche ...)
Dans Reposiroty/Members.php, ligne 1398, même remarque

Non, c'est purement « esthétique » les espaces, le manque de consistance m'empêche juste de choper toutes les erreurs facilement :)

Dans install/index.php, lignes 423 et 1016
et aussi un peu partout dans les "includes" au point que je me demande si c'est dérangeant ? ;-)

Ça l'est, mais pas là :p

C'est une histoire d'espace de noms. Lorsqu'un espace de noms est défini, il sera utilisé dans le fichier qui le déclare, et les objets par défaut (tels que Exception, DateTime etc) devront être appelés d'une manière qui spécifie leur espace de noms.

En gros, si un fichier comporte l'instruction namespace, il faut le \ sur Exception et consorts.

Exemple :

<?php
namespace Galette\Mon\Esapce\De\Noms

throw new Exception('Une exception bidon');

Ce code ne fonctionnera pas, car on essaie ici de charger un objet qui s'appelle en réalité Galette\Mon\Esapce\De\Noms\Exception (un objet Exception dans l'espace de noms Galette\Mon\Esapce\De\Noms). En remplaçant Exception par \Exception, on va charger un objet nommé Exception dans un espace de noms vide, on obtient donc ce que l'on souhaite.

De la même façon, si l'on cherche à instancier l'objet Adherent de Galette, il faut soit utiliser new Galette\Entity\Adherent(), soit utiliser préalablement l'instruction use Galette\Entity\Adherent ou use Galette\Entity\Adherent as Toto (dans le dernier cas, on utilisera new Toto() et non pas new Adherent() !)

En espérant que cette explication éclaire quelque peu ta lanterne :)

Dans Galette, des espaces de noms sont définis dans chaque objet contenu dans le dossier lib uniquement.

Actions

Formats disponibles : Atom PDF