[PHP] Globale array als object benaderen??

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Wie is het volgende nog al tegenkomen? Code waarin bijvoorbeeld een globale array wordt gedefinieerd global $test maar deze wordt dan nadien in de code als een object benaderd: $test->x i.p.v. $test['x'] dus.

In bepaalde versies van PHP blijkt dit te werken, in andere versies niet, of ligt dit aan een instelling misschien? Lijkt mij geen goede manier van werken in ieder geval, maar had graag eens gehoord of nog iemand dit al is tegengekomen?

Acties:
  • 0 Henk 'm!

  • BCC
  • Registratie: Juli 2000
  • Nu online

BCC

Register globals staat tegenwoordig zo goed als overal uit (en terrecht). Google er eens op of bekijk de php manual: http://nl3.php.net/register_globals

Ik het kort: gebruik nooit globals omdat het nogal een security risk is. Je kan er zowieso het beste niet gebruiken in je ontwerpen omdat 99% van de hosts globals uit hebben staan ivm diezelfde security risks.

[ Voor 3% gewijzigd door BCC op 02-07-2007 17:46 ]

Na betaling van een licentievergoeding van €1.000 verkrijgen bedrijven het recht om deze post te gebruiken voor het trainen van artificiële intelligentiesystemen.


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Hier dacht ik ook eerst aan maar register_globals staat in beide gevallen op dezelfde waarde ingesteld...

Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 03:42

.oisyn

Moderator Devschuur®

Demotivational Speaker

Ik snap niets van je vraag. Of tenminste, als mijn interpretatie juist is dan snap ik niet wat 'global' er überhaupt mee te maken heeft. Is het niet gewoon dat je je afvraagt waarom het volgende soms wel werkt, en soms niet, en of daar wellicht een setting voor is:
PHP:
1
2
3
4
$test = array();
$test["x"] = 123;

echo $text->x;

?

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Dat is mijn vraag inderdaad ja.

Acties:
  • 0 Henk 'm!

  • FragFrog
  • Registratie: September 2001
  • Laatst online: 09:34
Gezien de manier waarop PHP4 objecten implementeerde verbaast het me niet dat het werkt. Ik vind het persoonlijk niet erg fraai aangezien array-indici juist in PHP zo mooi wel een string kunnen zijn en je op deze manier de indruk wekt dat je een constante member opvraagt :)

Afschrijven als 'opmerkelijk' en niets meer mee doen ;)

Waarom het trouwens soms wel soms niet werkt: ik vermoed dat het aan de PHP versie's ligt, kijk hier eens naar. Het is geen instelling die ik ooit ben tegengekomen in ieder geval.

[ Site ] [ twitch ] [ jijbuis ]

Pagina: 1