Visualizzazione dei risultati da 1 a 10 su 10
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2006
    Messaggi
    33

    Aiuto... Operatore strano

    Ciao a tutti, nonostante ormai sia parecchio tempo che smanetto con il php oggi mi sono imbattuto in una cosa strana.... Leggendo una funzione scritta all'interno di un cms ho trovato un operatore che non avevo mai visto: "= &".
    Piu' precisamente vi incollo il pezzo di funzione:

    codice:
    $pm_handler =& xoops_gethandler('privmessage');             
    $pm =& $pm_handler->create();             
    $pm->setVar("subject", $_POST['subject']);
    Sapete spiegarmi a cosa serve? Ciao a tutti

  2. #2
    Si tratta dell'AND bit a bit. Operatore &
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2006
    Messaggi
    33
    Magari!!!! Ma non mi torna, se cosi' cosa vorrebbe dire quel pezzo di codice?

    Ciao e grazie!!!

  4. #4
    Originariamente inviato da skag
    Magari!!!!
    Magari cosa?! Non è che me lo sono inventato io, è così a basta!

    Codice PHP:
    $pm_handler =& xoops_gethandler('privmessage'); 
    che è equivalente a :

    Codice PHP:
    $pm_handler $pm_handler xoops_gethandler('privmessage'); 
    Viene effettuato un AND bit a bit tra il valore contenuto nella variabile $pm_handler ed il risultato della funzione xoops_gethandler(). Il risultato avrà un 1 in una detrminata posizione solamente se entrambi i bit delle variabili a confronto hanno 1 e 0 in caso contrario:

    ES:
    100110101110
    101010000100

    100010000100

    Poi io non conosco il contenuto delle variabili che vengono confrontate per cui non sono in grado di descriverti la logica applicativa.
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  5. #5
    Utente di HTML.it L'avatar di Secta
    Registrato dal
    May 2002
    Messaggi
    365
    "Dai diamanti non nasce niente, dal letame nascon fiori."
    Fabrizio De Andrè

  6. #6
    Originariamente inviato da Secta
    E io che credevo fosse http://www.php.net/manual/en/languag...ces.return.php
    ... e mi sa che c'hai ragione tu dato che il codice è:

    Codice PHP:
    $pm_handler =& xoops_gethandler('privmessage'); 
    e non:

    Codice PHP:
    $pm_handler &= xoops_gethandler('privmessage'); 
    sarebbe stato più chiaro scritto così:

    Codice PHP:
    $pm_handler = &xoops_gethandler('privmessage'); 
    A questo punto attendo anche io lumi da persone più ferrate sull'argomento
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  7. #7
    Utente di HTML.it L'avatar di Secta
    Registrato dal
    May 2002
    Messaggi
    365
    Ma infatti ero ironico, sò di aver ragione

    Nelle righe successive alla prima come vedi vengono richiamati dei metodi il che vuol dire che la funzione "xoops_gethandler" restituisce un oggetto... e trattandosi di un cms probabilmente tutto sto popò di roba è dovuto al fatto di dare compatibilità tra php4 e php5, dato il diverso modo con cui vengono trattati oggetti e variabili (per riferimento e per valore).
    "Dai diamanti non nasce niente, dal letame nascon fiori."
    Fabrizio De Andrè

  8. #8
    Originariamente inviato da Secta
    Ma infatti ero ironico, sò di aver ragione

    Nelle righe successive alla prima come vedi vengono richiamati dei metodi il che vuol dire che la funzione "xoops_gethandler" restituisce un oggetto... e trattandosi di un cms probabilmente tutto sto popò di roba è dovuto al fatto di dare compatibilità tra php4 e php5, dato il diverso modo con cui vengono trattati oggetti e variabili (per riferimento e per valore).
    mi togliete una curiosità che mi confondo sempre: =& è inutile con php5 vero?
    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

  9. #9
    Utente di HTML.it L'avatar di Laxus
    Registrato dal
    Oct 2010
    Messaggi
    251
    Originariamente inviato da Santino83_02
    mi togliete una curiosità che mi confondo sempre: =& è inutile con php5 vero?
    oltre ad essere inutile è anche deprecato

  10. #10
    Utente di HTML.it L'avatar di Secta
    Registrato dal
    May 2002
    Messaggi
    365
    Non è inutile, ma dipende dal dato che stai trattando e da cosa devi fare. I tipi primitivi sia in php4 che php5 vengono trattati per valore (creando una copia quindi). Gli oggetti in php5 (e a differenza di php4) vengono trattati per riferimento. Quindi potresti trovare utile trattare per riferimento i dati primitivi... mentre è inutile (e deprecato... come ti è stato già detto) trattare in questo modo gli oggetti.
    "Dai diamanti non nasce niente, dal letame nascon fiori."
    Fabrizio De Andrè

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.