Newsgroup: it.comp.www.php
Titolo: variabili in sola lettura

metodo tradizionale
 
class User {
     private $pFirstName;
 
     function __construct($pFirstName){
	$this->pFirstName = $pFirstName;
     }
 
     public function FirstName() {
         return $this->pFirstName;
     }
}
 
Esiste qualche "metodo innovativo" per rendere una variabile accessibile 
in sola lettura, evitando di dover ricorrere alla function 'FirstName'?
Qualcosa tipo
 
class User {
     public readonly $pFirstName;
 
     function __construct($pFirstName){
	$this->pFirstName = $pFirstName;
     }
}
 
per fare in modo che la variabile sia modificabile (inizializzabile) 
solo dal costruttore...

> Esiste qualche 
[cut]
 
Ma ti fa tanto schifo prendere un manuale del linguaggio e studiarti 
quelle 50/60 pagine sulla parte OO? Parti dalla documentazione su 
php.net
 e quello che non c'è scritto presumibilmente non si può fare 
oppure non è consigliato farlo.
 
Poi, senza fare polemica, non mi risultano casi in cui due linguaggi 
possano essere scambiati 1:1 traducendo banalmente la sintassi.

 solo dal costruttore...
 
class User
{
   const pFirstName = 'valore';
   ...
 
   // volendo...
   public function get_pFirstname
   {
     return  self::pFirstName;
   }
}
 
 
-- 
Design for the future, because it will be here sooner than you think.
(C) Eric S. Raymond, from "The Art of Unix Programming"


Finite le ferie eh?

 Finite le ferie eh?
 
Beh, non ha tutti i torti... :)
 
alex, nonostante in quasi tutte le risposte abbia ricevuto consigli tipo 
"non usare PHP come se fosse qualcos'altro" persiste a scrivere domande 
come se non avesse nemmeno aperto il manuale.
 
Un bel RTFM ci stava. :)
 
Bye.
 


La questione è che spesso gli sviluppatori se lasciati a se stessi si 
fanno del male da soli cercando di avvitare con un martello o di 
piantare un chiodo con una spellacavi
Alcuni linguaggi si prestano più ad alcune cose che ad altre, ottimo 
sarebbe capirne le peculiarità per utilizzarli dove più appropriato
 
Sicuramente _non_ leggere il manuale denota uno sviluppatore che non ha 
ancora sbattuto il muso abbastanza forte da capire quanto invece sia 
fondamentale farlo
 
M
 
-- 
I fatti mi cosano

 metodo tradizionale
già detto da tutti...io te lo dico in labronico...te e il php non ci 
siete "pipati" !
 
-- 
----- Italliaaaaa 3227! -----
Bisogna sempre dare spontaneamente quello che non si può impedire ti 
venga tolto.
(Vittorio Alfieri)
 
 


 
il valore per pFirstName va specificato al momento di creare l'istanza; 
solo dopo deve restare costante.
E poi perchè queste complicazioni?
A questo punto basta fare così
 
    public function get_pFirstname{return  'valore';}

 possano essere scambiati 1:1 traducendo banalmente la sintassi.
 
si avete ragione!!!
Il fatto è che 
vb.net
 offre grandi potenzialità, ed inconsciamente 
pretendo di fare altrettanto con altri linguaggi


 
ma dai, voglio solo capire dove arrivano le potenzialità

 sarebbe capirne le peculiarità per utilizzarli dove più appropriato
 
infatti, sto cercando di capire in modo pratico le varie 
caratterisiche... non vi adirate, appena posso cercherò di documentarmi 
con più calma ;)

 solo dopo deve restare costante.
 
Se è definita a runtime allora, imho, non è una costante.
 
Per fare quello che dici tu allora basta definire la variabile privata, 
passare il valore al costruttore e non definire alcun metodo che 
consenta di alterarne il valore; ma questa non è una costante... è una 
variabile/proprietà non accessibile.


 ma dai, voglio solo capire dove arrivano le potenzialità
 
Grandi potenzialità....che derivano dalla sua espandibilità!
Per il tuo background...se non vuoi ri-studiare tutto (ex-novo)....non 
te ne fai di nulla!Lascia perdere!
Vuoi rimanere sotto *nix?
... installati Eclipse e comincia a spippolare in Java...ritrovi tutti 
i concetti che già sai (o che dovresti sapere!)
 
-- 
----- Italliaaaaa 3227! -----
Ci sono cattivi esploratori che pensano che non ci siano terre dove 
approdare solo perché non riescono a vedere altro che mare attorno a 
sé.
(Francesco Bacone)
 
 

 concetti che già sai (o che dovresti sapere!)
 
lo sto facendo
 


 
ahahaha quanto mi fanno sorridere certe osservazioni a distanza di tempo ;)
Pensare che mi sono ormai scritto quasi un centinaio di file...