Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it L'avatar di nabozzz
    Registrato dal
    Nov 2004
    Messaggi
    145

    [PHP5] Cannot re-assign

    Ciao a tutti

    ho provato alcuni script (perfettamente funzionanti su php4) su php5... e il risultato è apparso subito ai miei occhi catastrofico....

    codice:
    function convalida($this,$at,$up,$allowedTags) {
    
    	if ($up==1) {
    		$this = strtoupper($this);
    		$this = preg_replace($sea,$rep,$this);
    	}
    
    }
    ho preso solo il pezzo che mi interessava....

    questa funzione talmente banale, su php5 mi dice questo:

    codice:
    Fatal error: Cannot re-assign $this in /functions.php on line 15
    E' giusto che sia così? Dipende da alcune impostazioni di php? Spero ci sia una soluzione, perché altrimenti mi attende un lungo periodo di aggiornamenti :-(

    ciao a tutti
    ... tutti quanti portiamo un tabarro che asconde... qualche volta una gioia, qualche volta un dolore...

  2. #2
    Utente di HTML.it L'avatar di nabozzz
    Registrato dal
    Nov 2004
    Messaggi
    145
    mmmm mi rispondo da solo....

    forse non posso usare la variabile $this !?
    ... tutti quanti portiamo un tabarro che asconde... qualche volta una gioia, qualche volta un dolore...

  3. #3
    Originariamente inviato da nabozzz
    mmmm mi rispondo da solo....

    forse non posso usare la variabile $this !?
    Se usi le classi..SI !!! nella programmazione ad oggetti di PHP, $this è una parola chiave riservata e che identifica l'oggetto stesso. Ad esempio, se definisci un oggetto come

    class Pippo {
    public $peppo;

    function Scrivi() {
    echo "<h1>".$this->$peppo."</h1>";
    }
    }

    $classe = new Pippo();

    come vedi, $this viene usato per identificare la variabile interna della classe. Quindi non puoi utilizzare una variabile $this all'interno di una classe!

  4. #4
    Utente di HTML.it L'avatar di nabozzz
    Registrato dal
    Nov 2004
    Messaggi
    145
    Si ok, ma non mi trovavo all'interno di una classe...

    ovvero.. la funzione che ho citato nell'esempio è esterna ad una classe
    ... tutti quanti portiamo un tabarro che asconde... qualche volta una gioia, qualche volta un dolore...

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    460
    E' una variabile riservata. Non e' che ci sia molto da fare. Preparati a fare un semplicissimo refactoring. Un bel replace di $this in $_this non penso sia un gran problema.
    There are 10 types of people in the world - those who understand binary and those who don't.

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 © 2025 vBulletin Solutions, Inc. All rights reserved.