/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Lokal variabler i klasser
Fra : Johnny Jakobsen


Dato : 26-08-03 22:08

Hej

Når man laver Klasser i PHP er det så også muligt at definere lokale
variabler for klassen?
Umiddelbart ser det ud til at alle variabler som standart er globale.

-The Baptizer
www.area42.dk



 
 
Jacob Atzen (27-08-2003)
Kommentar
Fra : Jacob Atzen


Dato : 27-08-03 07:48

"Johnny Jakobsen" <btz@area42.dk> writes:

> Når man laver Klasser i PHP er det så også muligt at definere lokale
> variabler for klassen?
> Umiddelbart ser det ud til at alle variabler som standart er globale.

Hvad mener du med lokale variable for en klasse?

En klasse har attributer, disse defineres med som:

var $foo;

Inde i klassen, men uden for metoderne.

Det er i PHP4 ikke muligt at definere private variable, der kun kan
tilgås fra klassen. Det kommer først i PHP5.

--
Med venlig hilsen
- Jacob Atzen

Johnny Jakobsen (27-08-2003)
Kommentar
Fra : Johnny Jakobsen


Dato : 27-08-03 12:19

> > Når man laver Klasser i PHP er det så også muligt at definere lokale
> > variabler for klassen?
> > Umiddelbart ser det ud til at alle variabler som standart er globale.
>
> Hvad mener du med lokale variable for en klasse?
>
> En klasse har attributer, disse defineres med som:
>
> var $foo;
>
> Inde i klassen, men uden for metoderne.
>
> Det er i PHP4 ikke muligt at definere private variable, der kun kan
> tilgås fra klassen. Det kommer først i PHP5.

Det var de private variabler jeg ledte efter, men det må jeg jo så vente med
til PHP5.

-The Baptizer
www.area42.dk



Michael Rasmussen (27-08-2003)
Kommentar
Fra : Michael Rasmussen


Dato : 27-08-03 16:48

On Wed, 27 Aug 2003 08:47:52 +0200, Jacob Atzen wrote:

>
> Det er i PHP4 ikke muligt at definere private variable, der kun kan
> tilgås fra klassen. Det kommer først i PHP5.
Hvis man tænker i gamle funktionsorienterede programmeringssprog - Miranda
f.eks, der havde man samme setup som i PHP. Her løstes problematikken ved
at lave functioner, hvis eneste formål var, at gemme værdien af en
variabel. F.eks. kunne man erklærer en metode inde i en anden metode, dog
var den ikke privat i OO forstand, men indholdet var dog beskyttet af den
omkringliggende metode.

--
Hilsen/Sincerely, Michael Rasmussen

En windows admin er en person, for hvem den største bedrift er, at
lave konfiguration af serveren med trial and error via en gui.


Nezar Nielsen (28-08-2003)
Kommentar
Fra : Nezar Nielsen


Dato : 28-08-03 16:55

Michael Rasmussen wrote:
>
> Hvis man tænker i gamle funktionsorienterede programmeringssprog - Miranda
> f.eks, der havde man samme setup som i PHP. Her løstes problematikken ved
> at lave functioner, hvis eneste formål var, at gemme værdien af en
> variabel. F.eks. kunne man erklærer en metode inde i en anden metode, dog

Det er vist ca. det samme man får ved at bruge PEAR's (eller sin egen)
getStaticProperty:

* If you have a class that's mostly/entirely static, and you need
static
* properties, you can use this method to simulate them. Eg. in your
method(s)
* do this: $myVar = &PEAR::getStaticProperty('MyClass', 'myVar');
* You MUST use a reference, or they will not persist!
....
function &getStaticProperty($class, $var)
{
static $properties;
return $properties[$class][$var];
}


Søg
Reklame
Statistik
Spørgsmål : 177559
Tips : 31968
Nyheder : 719565
Indlæg : 6408935
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste