PHP attend T PAAMAYIM NEKUDOTAYIM?
7 réponses
c'est l'opérateur double côlon ::
(voir liste des parser tokens ).
Google fonctionne à merveille.
c'est Hébreu pour" double colon".
c'est un nom pour l'opérateur ::
en PHP. Ça signifie littéralement "double côlon". Pour une raison quelconque, ils l'ont appelé en hébreu. Vérifiez votre syntaxe de code, et mettez un ::
le cas échéant: -)
À Partir De Wikipedia :
en PHP, l'opérateur de résolution de portée est aussi appelé Paamayim Nekudotayim (en hébreu: "deux points"), qui signifie "deux points" en hébreu Hébreu.
le nom" Paamayim Nekudotayim " a été introduit dans le Moteur Zend 0.5 développé par Israël et utilisé en PHP 3. Bien qu'il ait été déroutant pour beaucoup de développeurs qui ne parlent pas hébreu, il est encore être utilisé en PHP 5, comme dans ce message d'erreur type:
$ php-r:: erreur D'analyse: erreur de syntaxe, inattendu T_PAAMAYIM_NEKUDOTAYIM
selon PHP 5.4, messages d'erreur concernant l'opérateur de résolution de portée comprennent toujours ce nom, mais ont clarifié quelque peu sa signification:
$ php-r :: Parse error: syntax error, unexpected '::' (T_PAAMAYIM_NEKUDOTAYIM)
à Partir de l'officiel de PHP documentation :
L'opérateur de résolution de portée (également appelé Paamayim Nekudotayim) ou termes plus simples, le double du côlon, est un jeton qui permet d'accéder à Propriétés ou méthodes statiques, constantes et dépassées d'une classe.
lorsque vous faites référence à ces articles qui ne font pas partie de la définition de la classe, utilisez le nom de la classe.
à partir de PHP 5.3.0, il est possible de faire référence à la classe en utilisant un variable. La valeur de la variable ne peut pas être un mot-clé (par ex. et statique).
Paamayim Nekudotayim apparaîtrait d'abord comme un choix étrange pour nommer un double-côlon. Cependant, en écrivant le moteur de Zend 0.5 (qui alimente PHP 3), c'est ce que l'équipe de Zend a décidé de l'appeler. Il en fait, ça veut dire double-colon - en hébreu!
cela arrive aussi lorsque vous appliquez une constante en PHP à la fonction empty ():
if (!empty(SOME_CONSTANT)) {
}
C'était mon affaire. Je l'ai résolu en utilisant ceci:
$string = SOME_CONSTANT;
if (!empty($string)) {
}
pour moi c'est arrivé dans une fonction de classe.
en PHP 5.3 et au-dessus de $this::$defaults
fonctionnait bien; quand j'ai échangé le code dans un serveur qui pour quelque raison que ce soit avait un numéro de version plus bas il a lancé cette erreur.
la solution, dans mon cas, était d'utiliser le mot-clé self
au lieu de $this
:
self::$defaults
fonctionne très bien.
C'est comme ça que je l'ai eu. J'essayais les limites des expressions entre guillemets. Voici donc le code:
Code
$a = 5;
echo "{$a == 5 ? 'yes' : 'no'} its possible";
sortie
PHP Parse error: syntax error, unexpected '==' (T_IS_EQUAL), expecting :: (T_PAAMAYIM_NEKUDOTAYIM) in php shell code on line 1