Ho iniziato a cercare lingue diverse per iniziare. Ho trovato method_missing in Ruby molto interessante ma non sono riuscito a trovare lo stesso in Java e PHP. C'è qualcosa come method_missing in Java o PHP?Metodo mancante in Java o PHP
7
A
risposta
8
PHP ha __call($name, array $args)
. È un catchall che gestisce le situazioni in cui si chiama un metodo che non è definito per l'istanza.
In PHP> = 5.3 è presente anche __callStatic($name, array $args)
che funziona in gran parte allo stesso modo solo a livello di classe (duh).
class MyClass
{
public function __call($name, array $args)
{
echo "You tried to call $name(".implode(',',$args)."). Silly user.";
}
}
$k = new MyClass();
$k->doSomething(1,2,3); // You tried to call doSomething(1,2,3). Silly user.
L'equivalente in Java è un po 'più ingombrante e coinvolge qualcosa chiamato la classe Proxy. Un tutorial può essere trovato here - gli esempi sono un po 'troppo da riassumere qui.
1
1
In PHP, è possibile utilizzare il metodo magico __call()
.
Problemi correlati
- 1. mancante php53 o PHP54 da homebrew-php
- 2. Funzione Session_start mancante in PHP
- 3. HttpClient metodo oggetto mancante
- 4. PHP $ GLOBALS mancante $ _SERVER
- 5. mancante @Override in librerie Java
- 6. alias classe o un metodo in Java
- 7. Esiste un metodo __equals in PHP come in Java?
- 8. Utilizzo del metodo mancante in Rails
- 9. Token CSRF mancante o errato
- 10. Blocco metodo sincronizzato Java su oggetto o metodo?
- 11. Scegliere tra java o php per GWT!
- 12. Metodo Type.GetProperty() mancante in Windows 8 Developer Preview
- 13. Spring Boot MultipartResolver mancante nel metodo PUT
- 14. Metodo "aperto" OkHttpClient mancante nella v2.0
- 15. [Avviso PHP: mail(): "sendmail_from" non impostato in php.ini o personalizzato "Da:" header mancante
- 16. XMLReader mancante nella mia versione di PHP?
- 17. Come stampare numeri esadecimali in PHP o Java
- 18. Settimana mancante in DateTime di PHP-> modifica ('prossima settimana')
- 19. estensione php xsl mancante controllo prontezza magento
- 20. repaint() Metodo in Java
- 21. metodo clone() in Java
- 22. Metodo ArrayList.toArray() in Java
- 23. java.sql.SQLException: parametro IN o OUT mancante all'indice :: 1
- 24. contesto mancante per dichiarazione di metodo - In-app ricevimento verificationController
- 25. Metodo SetRepresentation() mancante in C# MongoDB.Driver 2.0.0-beta1
- 26. mono gtk ciao mondo in errore, "metodo mancante"
- 27. Metodo di estensione MvcMailer Send() mancante in ASP.Net MVC 4
- 28. YUICompressore o simile in PHP?
- 29. AppEngine Java Google+ Signin mancante gplus_id
- 30. Metodo di crittografia implementato sia per PHP che per Java?
Dopo aver usato il rubino per molto tempo e tornare a Java, ho voglia di tornare al 20 ° secolo. – texasbruce