2010-05-03 5 views
3

Comment définir une constante dans une fonctiondéfinissent constante en php

par exemple.

class { 

    public test; 

    function tester{ 

     const test = "abc"; 

    } 

    } 
+0

Il suffit de remarquer que vous ne devriez pas être en train de définir une constante dans une fonction, de toute façon. Cela devrait probablement être une propriété de l'objet, pas une constante de la classe, puisque les constantes ne devraient jamais avoir l'occasion de changer. – Matchu

Répondre

6

Vous faites bien, mais vous avez besoin de mettre le const au niveau de la classe pas dans la fonction, par exemple:

class { 
const TEST = "abc"; 
public $test2; 

function tester{ 
    // code here 
} 
} 

More info here.

De plus, vous manquez $ dans la variable publique test

5

Je pense que vous voulez un Class Constant

class SomeClass { 

    const test = "abc"; 

    function tester() { 
    return; 
    } 

} 
4

Par définition, vous ne devriez pas attribuer une valeur à une constante après sa definiton. Dans le contexte de la classe, vous utilisez le mot-clé const et self:: pour y accéder en classe à l'interne.

class TestClass 
{ 
    const test = "abc"; 

    function tester() 
    { 
     return self::test; 
    } 
} 

$testClass = new TestClass(); 
//abcabc 
echo $testClass->tester(); 
echo TestClass::test; 

Vous pouvez voir que vous pouvez également accéder à la constante comme une propriété de classe statique à l'aide ::

Questions connexes