kan inte komma åt $_GET[''] i min klass

Permalänk
Medlem

kan inte komma åt $_GET[''] i min klass

Jag försöker skriva koden nedan, men jag får unexpected T_VARIABLE-fel.
Kan jag lösa det på något smidigt sätt?

class GlobalVal { public static $lang = (isset($_GET['lang'])) ? $_GET['lang'] : 'sv'; }

Visa signatur
Permalänk
Medlem

kalla mig gärna noob och idiot men ska de inte vara såhär

"Swedish - Sweden" => "sv-se",

class GlobalVal
{
public static $lang = (isset($_GET['lang'])) ? $_GET['lang'] : 'sv-se';
}

Visa signatur

Särskrivningar & Felstavningar är min specialitet

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av McTw1st
kalla mig gärna noob och idiot men ska de inte vara såhär

"Swedish - Sweden" => "sv-se",

class GlobalVal
{
public static $lang = (isset($_GET['lang'])) ? $_GET['lang'] : 'sv-se';
}

Njae... Jag förstår va du menar, men jag vill bara kunna hämta ut en textsträng...
Skulle likagärna kunna varit:

public static $name = (isset($_GET['name'])) ? $_GET['name'] : 'John Doe';

Visa signatur
Permalänk
Medlem

hmmm ja du... får nog lämna vidare detta

Visa signatur

Särskrivningar & Felstavningar är min specialitet

Permalänk
Legendarisk

http://php.net/manual/en/language.oop5.static.php

Citat:

Like any other PHP static variable, static properties may only be initialized using a literal or constant; expressions are not allowed. So while you may initialize a static property to an integer or array (for instance), you may not initialize it to another variable, to a function return value, or to an object.

Visa signatur

Abstractions all the way down.

Permalänk
Medlem

Vet inte vad du har tänkt ha GlobalVal till, men vill du fortfarande använda classen kan du göra såhär.

class GlobalVal { public static $lang; public static function Init() { self::$lang = (isset($_GET['lang'])) ? $_GET['lang'] : 'sv' } }

Se bara till att köra GlobalVal::Init() först, därefter har GlobalVal::$lang sitt värde

Permalänk
Medlem

Jättebra... Tack för visat intresse!!!
Funkar fint nu...

Visa signatur