Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    new classname() o new classname

    Che differenza c'è fra new classname() e new classname?

    Ho visto che alcune classi vengono richiamate con le due parentesi alla fine mentre altre no.

    Mi illuminate?

  2. #2
    la differenza sta nel fatto che

    new classname() istanzia una classe e invoca il costruttore.
    Se è presente un costruttore, devi istanziarla per forza con le parentesi.

    new classname invece, istanzia una classe senza un costruttore.

  3. #3
    Utente di HTML.it L'avatar di garakkio
    Registrato dal
    Dec 2011
    residenza
    Roma
    Messaggi
    480
    Originariamente inviato da sir daniel
    la differenza sta nel fatto che

    new classname() istanzia una classe e invoca il costruttore.
    Se è presente un costruttore, devi istanziarla per forza con le parentesi.

    new classname invece, istanzia una classe senza un costruttore.
    Falso, non c'è alcuna differenza.
    Anche usando new classname il costruttore sarà sempre richiamato.
    D'altronde ci voleva poco a verificare, prima di dare informazioni sbagliate:

    Codice PHP:
    <?php

    class Pippo
    {
      public function 
    __construct()
      {
           echo 
    'ciao!!' PHP_EOL;
      }
    }

    $p = new Pippo;

  4. #4
    Non ho verificato perchè ero convintissimo di ciò che dicevo.
    Ricontrollerò.

    EDIT: Ecco, puoi evitarle anche se il costruttore non ha parametri obbligatori... altrimenti no.

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.