Pagina 3 di 3 primaprima 1 2 3
Visualizzazione dei risultati da 21 a 22 su 22

Discussione: Metodi Magici

  1. #21
    Non capisco cosa c'entrino __call() e errori di digitazione con il debug interno. Se scrivi male il nome di un metodo ci pensa l'interprete da solo a segnalartelo, a che serve __call()?

  2. #22
    Utente di HTML.it L'avatar di Secta
    Registrato dal
    May 2002
    Messaggi
    365
    Insisti ancora con questi errori di digitazione... era un esempio quello! Uno dei motivi per i quali potrebbe essere innescato __call ed eventualmente tornare utile... ma vedo che non riesco a farmi capire. Ti posto un'applicazione concreta di __call che utilizza Symfony1.x nella classe sfContext:

    Codice PHP:
      public function __call($method$arguments)
      {
        
    $event $this->dispatcher->notifyUntil(new sfEvent($this'context.method_not_found', array('method' => $method'arguments' => $arguments)));
        if (!
    $event->isProcessed())
        {
          
    $verb substr($method03); // get | set
          
    $factory strtolower(substr($method3)); // factory name

          
    if ('get' == $verb && $this->has($factory))
          {
            return 
    $this->factories[$factory];
          }
          else if (
    'set' == $verb && isset($arguments[0]))
          {
            return 
    $this->set($factory$arguments[0]);
          }

          throw new 
    sfException(sprintf('Call to undefined method %s::%s.'get_class($this), $method));
        }

        return 
    $event->getReturnValue();
      } 
    Questa si inserisce in un contesto più ampio ma è giusto per farti capire cosa intendo.
    "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.