IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

séparateur de folder dans un use [POO]


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 499
    Billets dans le blog
    1
    Par défaut séparateur de folder dans un use
    Bonjour,

    souhaitant faire un code plus propre, j'ai remplacé dans le use les / par des .DIRECTORY_SEPARATOR. mais
    Parse error: syntax error, unexpected '.', expecting ',' or ';' in C:\wamp64\www\ticket\methodes\GetResolvedMonth.php on line 4
    define('DIR_ROOT', dirname(__DIR__).DIRECTORY_SEPARATOR);.
    use DIR_ROOT.classes.DIRECTORY_SEPARATOR.PDO.DIRECTORY_SEPARATOR.PDO;Qu'est-ce qui va pas ?

  2. #2
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Par défaut
    Pour autant que je sache, les séparateurs d'espace de nom ne sont pas des séparateurs de dossiers : il faut toujours utiliser des anti-slashes. Et pour autant que je sache, une définition d'espace de nom, c'est comme toutes les définitions (classe, fonctions...) : ce n'est pas dynamique.

    Faire du code propre, c'est une bonne idée, mais il ne faut pas pousser le bouchon trop loin
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  3. #3
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 499
    Billets dans le blog
    1
    Par défaut
    Merci pour ta réponse.
    Néanmoins, c'est pas encore bon : au cas où l'erreur vienne du contexte, je mets toute la page
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?php
    include(DIR_ROOT."config".DIRECTORY_SEPARATOR."config.php");
    include(DIR_ROOT."classes".DIRECTORY_SEPARATOR."PDO.php");
    use classes\PDO\PDO;
    $pdo=new PDO();
    $var=$pdo->select('SELECT CASE WHEN  statustype  NOT IN (4,5) THEN  DATE_FORMAT(Last_Resolved_Date,"%Y/%m") ELSE 0 END as date FROM tickets;',[]);
    for ($i=0;$i<count($var);$i++)
          echo "var=".$var[$i]['date']."<br/>";
    ?>
    et la fin de PDO.php :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    /**
         * @param  mixed $sql
         * @param  mixed $values    [:tag => value]
         * @param  mixed $types     [:tag => PDO::PARAM_XXX] si tag absent alors PDO::PARAM_STR
         * @return array            null si erreur
         */
        public function select($sql, array $values, array $type = []): ?array
        {
            try {
                $stmt = self::$pdo->prepare($sql);
                foreach ($values as $tag => $v) {
                    $stmt->bindValue($tag, $v, $type[$tag] ?? \PDO::PARAM_STR);
                }
                $exec = $stmt->execute();
                return $stmt->fetchAll(\PDO::FETCH_ASSOC);
            } catch (\PDOException $e) {
                error_log('PDO::select - '.$e->message);
                return null;
            }
        }

    Parse error: syntax error, unexpected '.', expecting ',' or ';' in C:\wamp64\www\ticket\methodes\GetResolvedMonth.php on line 4
    A noter que cette page est dans un folder (au même niveau que classes), donc pas à la racine.

  4. #4
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Par défaut
    Les espaces de noms sont déclarés avec le mot-clé namespace. Un fichier contenant un espace de noms doit déclarer l'espace au début du fichier, avant tout autre code, avec une seule exception : le mot clé declare.
    https://www.php.net/manual/fr/langua...definition.php

    Déplace les includes après la définition du namespace.
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  5. #5
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 499
    Billets dans le blog
    1
    Par défaut
    Visiblement, la règle vaut aussi pour use...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Séparateur de ligne dans un mail
    Par defluc dans le forum Delphi
    Réponses: 12
    Dernier message: 09/08/2006, 15h03
  2. Réponses: 6
    Dernier message: 23/05/2006, 15h59
  3. [VBA-E]séparateur de texte dans une cellule
    Par desdenova dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 11/04/2006, 16h44
  4. Doit-on représenter l'IA dans un use case diagram
    Par eXiaNazaire dans le forum Cas d'utilisation
    Réponses: 10
    Dernier message: 02/01/2006, 20h09
  5. Protéger un folder dans un folder largement partagé
    Par calogerogigante dans le forum Administration
    Réponses: 16
    Dernier message: 21/12/2005, 15h40

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo