Konstante und Klasse

Hallo allerseits!

Ich habe folgenden code:

define („FOO“, „bar“);

class foobar {

function my_foobar() {
// Zugriff auf FOO geht nicht
echo FOO;
}

}

Ausgabe: FOO

Habe es schon mit GLOBALS oder global probiert, auch constant() funktioniert nicht. Also Problem ist, von der Klasse aus auf eine außenstehende Konstante zuzugreifen!

Gruß,
Peter Pils

Hallo Peter Pils,

das was du vorhast wuerde gegen das grundsaetzliche Prinzip von Klassen sprechen.

Besser:

<?php definde("FOO","BAR");
class foobar { private $foo; function \_\_construct($newfoo) { $this-\>foo = $newfoo; } function echofoo () { echo $this-\>foo; } } $echofoo = new foobar( FOO ); $echofoo-\>echofoo(); (ungetestet, code fuer php 5) Gruesse Stefan

Habe es schon mit GLOBALS oder global probiert, auch
constant() funktioniert nicht. Also Problem ist, von der
Klasse aus auf eine außenstehende Konstante zuzugreifen!

dann ahst du einen anderen fehler, geht hier auf alle faelle:

11.18:je@6@booster:
$ cat test.php
<?php define("FOO","bar");<br />
class foobar {
 function my\_foobar() {
 echo FOO;
 }
}

$a = new foobar();
$a-\>my\_foobar();

?\>11.18:je@6@booster:
$ /usr/lib/cgi-bin/php5 -q test.php
bar11.19:je@6@booster:
$

Hallo Peter Pils,

das was du vorhast wuerde gegen das grundsaetzliche Prinzip
von Klassen sprechen.

tatsächlich? was ist mit z.b. PHP_USER_ERROR