Discussion:
Usage du backslash ?
(trop ancien pour répondre)
Une Bévue
2015-10-18 15:54:25 UTC
Permalink
Dans une appli téléchargée "Mongo Admin" (c'est une béta)

j'ai des choses comme :
class Authentication extends \Core\AbstractWebServiceProvider {

donc avec des backslashes.

ça signifie quoi en php5 ?

L'appli ne "marche pas", elle donne une page blanche, il y a bien des
tas de divs imbriquées, MAIS, la seule qui ait un contenu "text" c'est
" " càd une espace insécable...

J'ai vérifié les perms, le mod_rewrite est chargé pas Apache2 et j'ai
mis des Allowoverride All partout dans httpd.conf comme demandé.

Je suis sous Mac OS X Yosemite.

je n'ai jamais vu de "\" dans un fichier php.

(mis à part pour escaper un $).
Denis Beauregard
2015-10-18 18:41:48 UTC
Permalink
Le Sun, 18 Oct 2015 17:54:25 +0200, Une Bévue
Post by Une Bévue
Dans une appli téléchargée "Mongo Admin" (c'est une béta)
class Authentication extends \Core\AbstractWebServiceProvider {
donc avec des backslashes.
ça signifie quoi en php5 ?
L'appli ne "marche pas", elle donne une page blanche, il y a bien des
tas de divs imbriquées, MAIS, la seule qui ait un contenu "text" c'est
" " càd une espace insécable...
J'ai vérifié les perms, le mod_rewrite est chargé pas Apache2 et j'ai
mis des Allowoverride All partout dans httpd.conf comme demandé.
Je suis sous Mac OS X Yosemite.
je n'ai jamais vu de "\" dans un fichier php.
(mis à part pour escaper un $).
Serait-ce un résidu d'une version pour Windows ?

Dans unix/linux : monprogramme /etc/div/xyx -argument
Dans windows: monprogramme \etc\div\xyx /argument


Denis
Une Bévue
2015-10-19 04:03:48 UTC
Permalink
Post by Denis Beauregard
Serait-ce un résidu d'une version pour Windows ?
Dans unix/linux : monprogramme /etc/div/xyx -argument
Dans windows: monprogramme \etc\div\xyx /argument
Ben, c'est ce que j'ai pensé aussi, donc, ça ne peut pas marcher sur Mac
OS X...
Une Bévue
2015-10-19 14:51:51 UTC
Permalink
Post by Une Bévue
Ben, c'est ce que j'ai pensé aussi, donc, ça ne peut pas marcher sur Mac
OS X...
Mais bon, l'erreur ne venait pas de là.
Comme ce logiciel utilise du json, il ne faut strictement n'avoir aucun
warning ni erreur, j'ai donc du changer mon php.ini.

Depuis ça roule avec des backslashes dans des noms de classe...
Denis Beauregard
2015-10-19 17:40:29 UTC
Permalink
Le Mon, 19 Oct 2015 06:03:48 +0200, Une Bévue
Post by Une Bévue
Post by Denis Beauregard
Serait-ce un résidu d'une version pour Windows ?
Dans unix/linux : monprogramme /etc/div/xyx -argument
Dans windows: monprogramme \etc\div\xyx /argument
Ben, c'est ce que j'ai pensé aussi, donc, ça ne peut pas marcher sur Mac
OS X...
Dans Windows, en interne, donc en dehors de la ligne de commande,
/ et \ sont équivalents. Un logiciel bien écrit devrait préférer
/ qui couvre tous les environnements (Windows, Unix/Linux et dérivés
comme Mac OS X ou Android). Peut-être que le PHP a prévu le coup et
que les / et \ sont équivalents quand le \ n'est pas dans une chaîne,
ce qui expliquerait ton message qui suit, soit d'ignorer les
avertissements.


Denis
Une Bévue
2015-10-21 10:25:11 UTC
Permalink
Post by Denis Beauregard
Dans Windows, en interne, donc en dehors de la ligne de commande,
/ et \ sont équivalents. Un logiciel bien écrit devrait préférer
/ qui couvre tous les environnements (Windows, Unix/Linux et dérivés
comme Mac OS X ou Android). Peut-être que le PHP a prévu le coup et
que les / et \ sont équivalents quand le \ n'est pas dans une chaîne,
ce qui expliquerait ton message qui suit, soit d'ignorer les
avertissements.
ok merci bien pour ces précisions.
Electron
2015-10-18 19:42:54 UTC
Permalink
Post by Une Bévue
Dans une appli téléchargée "Mongo Admin" (c'est une béta)
class Authentication extends \Core\AbstractWebServiceProvider {
donc avec des backslashes.
ça signifie quoi en php5 ?
L'appli ne "marche pas", elle donne une page blanche, il y a bien des
tas de divs imbriquées, MAIS, la seule qui ait un contenu "text" c'est
" " càd une espace insécable...
J'ai vérifié les perms, le mod_rewrite est chargé pas Apache2 et j'ai
mis des Allowoverride All partout dans httpd.conf comme demandé.
Je suis sous Mac OS X Yosemite.
je n'ai jamais vu de "\" dans un fichier php.
(mis à part pour escaper un $).
Bonjour,

J'ai vu ça dans un tuto video php...

Voir les espaces de noms
http://php.net/manual/fr/language.namespaces.rationale.php

C'est un bon point de départ pour ta recherche. Mais je n'en sais pas
beaucoup plus n'ayant pas approfondi la chose.

Bien à vous,
Electron.
mazert
2015-11-01 10:41:39 UTC
Permalink
Post by Une Bévue
Dans une appli téléchargée "Mongo Admin" (c'est une béta)
class Authentication extends \Core\AbstractWebServiceProvider {
Il s'agit d'utiliser la classe abstraite AbstractWebServiceProvider
située dans le namespace (l'espace de nom) \Core\AbstractWebServiceProvider.

Pour la faire courte : \ est l'espace de nom racine . Imaginons que tu
te trouve dans un namespace Toto par exemple, tu ne pourra pas faire de
chose comme new Exception par exemple, car la classe Exception ne se
trouve pas dans le namespace Toto mais dans le namespace global \, donc
il faudra faire new \Exception("Ca marche pas !, 666).

Plus de détails :
https://openclassrooms.com/courses/les-espaces-de-noms-en-php
mazert
2015-11-01 10:46:14 UTC
Permalink
Post by Une Bévue
Dans une appli téléchargée "Mongo Admin" (c'est une béta)
class Authentication extends \Core\AbstractWebServiceProvider {
Correction :

Il s'agit d'utiliser la classe abstraite AbstractWebServiceProvider
située dans le namespace (l'espace de nom) : \Core
Une Bévue
2015-11-02 13:07:47 UTC
Permalink
Post by mazert
Il s'agit d'utiliser la classe abstraite AbstractWebServiceProvider
située dans le namespace (l'espace de nom)
\Core\AbstractWebServiceProvider.
Pour la faire courte : \ est l'espace de nom racine . Imaginons que tu
te trouve dans un namespace Toto par exemple, tu ne pourra pas faire de
chose comme new Exception par exemple, car la classe Exception ne se
trouve pas dans le namespace Toto mais dans le namespace global \, donc
il faudra faire new \Exception("Ca marche pas !, 666).
https://openclassrooms.com/courses/les-espaces-de-noms-en-php
OK, OK, merci beaucoup pigé !

ça n'a donc rien à voir avec les pathes version windows, ce que je
supputais.

Continuer la lecture sur narkive:
Loading...