Motivo tecnico del motivo per cui è necessario utilizzare Class :: static_method () anziché Class-static_method () in PHP

3

Mi piacerebbe sapere se c'è una ragione tecnica per cui i progettisti di PHP hanno deciso di invocare un metodo statico usando Class::static_method() invece di Class->static_method() (come qualsiasi altro metodo). La modifica della sintassi riflette eventuali requisiti tecnici?

Lo sto chiedendo perché la sintassi per ogni altra lingua che conosco per invocare un metodo è sempre la stessa, nonostante sia statica o meno.

    
posta Geeo 21.11.2013 - 19:31
fonte

1 risposta

1

La chiamata dei metodi di istanza non è Class->method() ma $object->method() . Inoltre, la semantica dell'operatore -> è che passa l'istanza della classe (vulgo: object) al metodo in un parametro nascosto; i metodi di classe differiscono dai metodi di istanza in quanto, nella migliore delle ipotesi, hanno accesso agli attributi di classe.

    
risposta data 06.12.2013 - 12:30
fonte

Leggi altre domande sui tag