Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2006
    Messaggi
    292

    validare una costante all'interno di una classe

    Ciao ragazzi, come da titolo ho bisogno di validare una costante che verifica se effettivamente è sata definita, il problema è che ricevo sempre una valore vuoto. Ecco la mia classe:

    Codice PHP:
    class Languages 
    {
        public function 
    __construct()
        {
        }
        
        public function 
    printLang($const)
        {
            return !
    defined($const) ? '' constant($const);
        }


    e questo è quello che passo alla classe:

    Codice PHP:
    define('MIA_COSTANTE'"valore della mia costante");
    echo 
    Languages::printLang(MIA_COSTANTE); 

    Come vi dicevo, ricevo un valore vuoto, dove sbaglio?

    Grazie
    M4tt86

  2. #2
    Utente di HTML.it
    Registrato dal
    Feb 2006
    Messaggi
    292
    up

  3. #3
    Utente di HTML.it L'avatar di Laxus
    Registrato dal
    Oct 2010
    Messaggi
    251
    Come vi dicevo, ricevo un valore vuoto, dove sbaglio?
    passa come argomento di printLang MIA_COSTANTE come stringa, non come costante. (ps: anche se permesso, tu richiami printLang come se fosse statico, quando non lo è)

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2006
    Messaggi
    292
    Ciao Laxus, adesso funziona!
    Per quanto riguardo il fatto che richiamo printLang come se fosse statico come dovrei risolvere?

  5. #5
    Utente di HTML.it L'avatar di Laxus
    Registrato dal
    Oct 2010
    Messaggi
    251
    Per quanto riguardo il fatto che richiamo printLang come se fosse statico come dovrei risolvere?
    ... bhè, se vuoi una funzione statica, dichiarala come statica.
    public static myFunc() {}

  6. #6
    Utente di HTML.it
    Registrato dal
    Feb 2006
    Messaggi
    292
    Se invece non la voglio statica devo fare:

    Codice PHP:
    $l = new Languages();
    echo 
    $l->printLang('MIA_COSTANTE'); 
    Giusto?

  7. #7
    Utente di HTML.it L'avatar di Laxus
    Registrato dal
    Oct 2010
    Messaggi
    251
    già, altrimenti ricevi un errore non fatale di tipo E_STRICT

  8. #8
    Utente di HTML.it
    Registrato dal
    Feb 2006
    Messaggi
    292
    Ok, grazie di tutto. Sei stato molto gentile :-)

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.